... | ... | @@ -502,7 +502,7 @@ La situation résultante est illustrée ci-dessous : |
|
|
|
|
|
### Synchronisation descendante, cas d'un retard simple
|
|
|
|
|
|
> 💡Ici, on traite le cas d'un développeur auquel il ne manquerait localement que des commits produits et envoyés sur le serveur par d'autres développeurs.
|
|
|
> :bulb:Ici, on traite le cas d'un développeur auquel il ne manquerait localement que des commits produits et envoyés sur le serveur par d'autres développeurs.
|
|
|
|
|
|
#### Validation d'une modification sur le `clone 1` et synchronisation montante avec le serveur
|
|
|
|
... | ... | @@ -746,9 +746,119 @@ La situation résultante est illustrée ci-dessous : |
|
|
|
|
|
### Synchronisation descendante, cas d'avance/retard sans conflit
|
|
|
|
|
|
> 💡Ici, on traite le cas d'un développeur qui aurait à la fois :
|
|
|
> :bulb:Ici, on traite le cas d'un développeur qui aurait à la fois :
|
|
|
>
|
|
|
> * **pris de l'avance** en produisant plusieurs commits locaux pas encore synhcronisés avec le serveur
|
|
|
> * **pris du retard** en n'intégrant pas des commits produits et envoyés sur le serveur par d'autres développeurs
|
|
|
>
|
|
|
> Cependant, ici, on fait l'hypothèse que les modifications de ces différents commits **ne rentrent pas en conflit entre eux** (c'est à dire qu'ils n'ont **aucun fichier modifié en commun**) |
|
|
\ No newline at end of file |
|
|
> Cependant, ici, on fait l'hypothèse que les modifications de ces différents commits **ne rentrent pas en conflit entre eux** (c'est à dire qu'ils n'ont **aucun fichier modifié en commun**)
|
|
|
|
|
|
#### Production d'une nouvelle version à partir du dépôt `clone 1`, et synchronisation montante avec le serveur
|
|
|
|
|
|
Depuis le dépôt `clone 1`, on effectue une modification sur `unFichier.txt` :
|
|
|
|
|
|
```bash
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % cd ../../clone1
|
|
|
sebastienjean@MacBook-Air-749 clone1 % cd gitlab-bases
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % cat > unFichier.txt
|
|
|
un autre contenu
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % cat unFichier.txt
|
|
|
un autre contenu
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git diff
|
|
|
diff --git a/unFichier.txt b/unFichier.txt
|
|
|
index 4ae710c..46e2124 100644
|
|
|
--- a/unFichier.txt
|
|
|
+++ b/unFichier.txt
|
|
|
@@ -1,2 +1 @@
|
|
|
-Une ligne de texte
|
|
|
-Une autre ligne de texte
|
|
|
+un autre contenu
|
|
|
```
|
|
|
|
|
|
On valide cette modification et on envoit le nouveau commit sur le serveur :
|
|
|
|
|
|
```bash
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git add unFichier.txt
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git commit -m "Nouvelle modification du fichier unFichier.txt"
|
|
|
[main b6c752a] Nouvelle modification du fichier unFichier.txt
|
|
|
1 file changed, 1 insertion(+), 2 deletions(-)
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git push
|
|
|
Enumerating objects: 5, done.
|
|
|
Counting objects: 100% (5/5), done.
|
|
|
Delta compression using up to 4 threads
|
|
|
Compressing objects: 100% (2/2), done.
|
|
|
Writing objects: 100% (3/3), 334 bytes | 334.00 KiB/s, done.
|
|
|
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
|
|
|
To https://gitlab.iut-valence.fr/jeans/gitlab-bases.git
|
|
|
899b42b..b6c752a main -> main
|
|
|
```
|
|
|
|
|
|
On vérifie l'état du dépôt et on en déduit que le dépôt local et le dépôt distant sont synchronisés :
|
|
|
|
|
|
```bash
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git status
|
|
|
On branch main
|
|
|
Your branch is up to date with 'origin/main'.
|
|
|
|
|
|
nothing to commit, working tree clean
|
|
|
```
|
|
|
|
|
|
```bash
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git log --pretty="format:%h %s %an %D"
|
|
|
b6c752a Nouvelle modification du fichier unFichier.txt sebastienjean HEAD -> main, origin/main, origin/HEAD
|
|
|
899b42b Ajout d'une ligne à unFichier.txt sebastienjean
|
|
|
425ba5e ajout d'un fichier sebastienjean
|
|
|
23b7e54 Initial commit Sebastien Jean
|
|
|
```
|
|
|
|
|
|
#### Production d'une nouvelle version à partir du dépôt `clone 2`
|
|
|
|
|
|
Depuis le dépôt `clone 2`, on crée un nouveau fichier `unAutreFichier.txt` :
|
|
|
|
|
|
```bash
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % cd ../../clone2/gitlab-bases
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % cat > unAutreFichier.txt
|
|
|
Ceci est un autre fichier
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % cat unAutreFichier.txt
|
|
|
Ceci est un autre fichier
|
|
|
```
|
|
|
|
|
|
On valide localement la modification :
|
|
|
|
|
|
```bash
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git add unAutreFichier.txt
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git commit -m "Ajout du fichier unAutreFichier.txt"
|
|
|
[main d9d3e8b] Ajout du fichier unAutreFichier.txt
|
|
|
1 file changed, 1 insertion(+)
|
|
|
create mode 100644 unAutreFichier.txt
|
|
|
```
|
|
|
|
|
|
On vérifie l'état du dépôt et on en déduit que :
|
|
|
|
|
|
* le dépôt local n'est pas synchronisé avec le dépôt distant (le commit local n'a pas été envoyé)
|
|
|
* la branche `origin/main` n'est pas à jour
|
|
|
|
|
|
```bash
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git status
|
|
|
On branch main
|
|
|
Your branch is ahead of 'origin/main' by 1 commit.
|
|
|
(use "git push" to publish your local commits)
|
|
|
|
|
|
nothing to commit, working tree clean
|
|
|
```
|
|
|
|
|
|
```bash
|
|
|
sebastienjean@MacBook-Air-749 gitlab-bases % git log --pretty="format:%h %s %an %D"
|
|
|
d9d3e8b Ajout du fichier unAutreFichier.txt sebastienjean HEAD -> main
|
|
|
899b42b Ajout d'une ligne à unFichier.txt sebastienjean origin/main, origin/HEAD
|
|
|
425ba5e ajout d'un fichier sebastienjean
|
|
|
23b7e54 Initial commit Sebastien Jean
|
|
|
```
|
|
|
|
|
|
La situation résultante est illustrée ci-dessous :
|
|
|
|
|
|

|
|
|
|
|
|
#### Synchronisation montante à partir du dépôt `clone 2`
|
|
|
|
|
|
Toujours à partir du dépôt `clone 2`, on se synchronise dans le sens montant avec la commande `git push` : |
|
|
\ No newline at end of file |