Update Gestion de versions avec hébergement du dépôt sur un serveur GitLab, les bases authored by Sebastien Jean's avatar Sebastien Jean
......@@ -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 :
![12-no-conflict-BeforePush](uploads/74f674c2af00c8e1182dd3a72deecc84/12-no-conflict-BeforePush.png)
#### 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