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
......@@ -421,12 +421,12 @@ On supprime le contenu du dépôt local précédent :
sebastienjean@MacBook-Air-749 gitlab-bases % rm -rf .git
```
```
```bash
sebastienjean@MacBook-Air-749 gitlab-bases % rm *
zsh: sure you want to delete all 2 files in /Users/sebastienjean/gitlab-bases [yn]? y
```
```
```bash
sebastienjean@MacBook-Air-749 gitlab-bases % ls -al
total 0
drwxr-xr-x 2 sebastienjean staff 64 Sep 25 11:53 .
......@@ -435,7 +435,7 @@ drwxr-xr-x@ 157 sebastienjean staff 5024 Sep 25 09:59 ..
On crée deux sous-répertoires pour accueillir les clones :
```plaintext
```bash
sebastienjean@MacBook-Air-749 gitlab-bases % mkdir clone1
```
......@@ -443,7 +443,7 @@ sebastienjean@MacBook-Air-749 gitlab-bases % mkdir clone1
sebastienjean@MacBook-Air-749 gitlab-bases % mkdir clone2
```
```
```bash
sebastienjean@MacBook-Air-749 gitlab-bases % ls -al
total 0
drwxr-xr-x 4 sebastienjean staff 128 Sep 25 11:53 .
......@@ -512,7 +512,7 @@ On se place dans le dépôt du `clone 1` :
sebastienjean@MacBook-Air-749 clone2 % cd ../clone1
```
```
```bash
sebastienjean@MacBook-Air-749 clone1 % ls -al
total 0
drwxr-xr-x 3 sebastienjean staff 96 Sep 25 12:05 .
......@@ -524,7 +524,7 @@ drwxr-xr-x 5 sebastienjean staff 160 Sep 25 12:05 gitlab-bases
sebastienjean@MacBook-Air-749 clone1 % cd gitlab-bases
```
```
```bash
sebastienjean@MacBook-Air-749 gitlab-bases % ls -al
total 24
drwxr-xr-x 5 sebastienjean staff 160 Sep 25 12:05 .
......@@ -646,11 +646,9 @@ sebastienjean@MacBook-Air-749 gitlab-bases % git log --pretty="format:%h %s %an
23b7e54 Initial commit Sebastien Jean
```
#### Synchronisation descendante depuis le `clone 2`
On se place dans le dépôt du `clone 2` :
```bash
```
sebastienjean@MacBook-Air-749 gitlab-bases % cd ../../clone2
sebastienjean@MacBook-Air-749 clone2 % ls -al
total 0
......@@ -659,7 +657,7 @@ drwxr-xr-x 4 sebastienjean staff 128 Sep 25 12:05 ..
drwxr-xr-x 5 sebastienjean staff 160 Sep 25 12:07 gitlab-bases
```
```bash
```
sebastienjean@MacBook-Air-749 clone2 % cd gitlab-bases
sebastienjean@MacBook-Air-749 gitlab-bases % ls -al
total 24
......@@ -672,7 +670,7 @@ drwxr-xr-x 12 sebastienjean staff 384 Sep 25 12:07 .git
On vérifie l'état du dépôt et on observe qu'il n'y a pas eu de synchronisation descendante automatique :
```bash
```
sebastienjean@MacBook-Air-749 gitlab-bases % git status
On branch main
Your branch is up to date with 'origin/main'.
......@@ -680,20 +678,24 @@ 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"
425ba5e ajout d'un fichier sebastienjean HEAD -> main, origin/main, origin/HEAD
23b7e54 Initial commit Sebastien Jean
sebastienjean@MacBook-Air-749 gitlab-bases %
```
> :eyes: La branch `origin/main` contient un cache de la branche `main` sur le dépôt distant. Mais ce cache ne se met à jour que lors de communication explicite (à l'initiative du développeur) entre le client git local et le serveur git distant. Les opérations add, commit, status et log sont exécutées localement, sans aucune communication avec le serveur.
La situation résultante est illustrée ci-dessous :
![11-multi-push](uploads/6cfe792b12cdca47f1ac05a5914db5bd/11-multi-push.png)
> :eyes: La branch `origin/main` du dépôt `clone 2` contient un cache de la branche `main` sur le dépôt distant. Mais ce cache ne se met à jour que lors de communication explicite (à l'initiative du développeur) entre le client git local et le serveur git distant. Les opérations add, commit, status et log sont exécutées localement, sans aucune communication avec le serveur.
>
> **La branche `origin/main` n'est pas à jour.**
La situation est illustrée ci-dessous :
#### Synchronisation descendante depuis le `clone 2`
> :bulb:La commande `git pull` permet au client git local de se **resynchroniser dans le sens descendant** avec le serveur, afin d'**obtenir (et d'intégrer à son historique local) les commits qui pourraient lui manquer**
> 💡 La commande `git pull` permet au client git local de se **resynchroniser dans le sens descendant** avec le serveur, afin d'**obtenir (et d'intégrer à son historique local) les commits qui pourraient lui manquer**
On se synchronise dans le sens descendant avec le serveur :
......@@ -736,4 +738,8 @@ sebastienjean@MacBook-Air-749 gitlab-bases % git log --pretty="format:%h %s %an
sebastienjean@MacBook-Air-749 gitlab-bases % cat unFichier.txt
Une ligne de texte
Une autre ligne de texte
```
\ No newline at end of file
```
La situation résultante est illustrée ci-dessous :
![12-multi-pull](uploads/688947d35375c9b2ab20170a6d66b834/12-multi-pull.png)
\ No newline at end of file