... | ... | @@ -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 :
|
|
|
|
|
|

|
|
|
|
|
|
> :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 :
|
|
|
|
|
|
 |
|
|
\ No newline at end of file |