MacBook-Air-749:gitlab-basics sebastienjean$ git commit -m "ajout d'un fichier"
MacBook-Air-749:gitlab-basics sebastienjean$ git commit -m "ajout d'un fichier"
[main deebe14] ajout d'un fichier
[main deebe14] ajout d'un fichier
1 file changed, 1 insertion(+)
1 file changed, 1 insertion(+)
create mode 100644 unFichier.txt
create mode 100644 unFichier.txt
```
La commande `git log` indique que les pointeurs `HEAD` et `main` sont en avance d'un commit par rapport à `origin/main`, ce qui veut signifie que le dépôt local est en avance d'un commit par rapport au dépôt distant.
@@ -242,8 +247,6 @@ Date: Sun Jan 23 10:13:01 2022 +0000
...
@@ -242,8 +247,6 @@ Date: Sun Jan 23 10:13:01 2022 +0000
Initial commit
Initial commit
```
```
On observe que les pointeurs `HEAD` et `main` sont en avance d'un commit par rapport à `origin/main`, ce qui veut signifie que le dépôt local est en avance d'un commit par rapport au dépôt distant.
Ceci est confirmé par la commande `git status` :
Ceci est confirmé par la commande `git status` :
```bash
```bash
...
@@ -255,6 +258,8 @@ Your branch is ahead of 'origin/main' by 1 commit.
...
@@ -255,6 +258,8 @@ Your branch is ahead of 'origin/main' by 1 commit.
nothing to commit, working tree clean
nothing to commit, working tree clean
```
```
Cette situation peut être illustrée de la manière suivante :
> :bulb: L'opération `commit` est **toujours locale**, comme illustré ci-dessus. L'observation de l'état du dépôt distant via l'URL ne montre pas de nouveau commit. :warning: **Ce commit doit être explicitement transmis au serveur**
> :bulb: L'opération `commit` est **toujours locale**, comme illustré ci-dessus. L'observation de l'état du dépôt distant via l'URL ne montre pas de nouveau commit. :warning: **Ce commit doit être explicitement transmis au serveur**
...
@@ -267,20 +272,22 @@ Lors de cette opération :
...
@@ -267,20 +272,22 @@ Lors de cette opération :
- le client `git` local compare l'état de la branche locale `main` et de la branche de _remote-tracking_ `origin/main`
- le client `git` local compare l'état de la branche locale `main` et de la branche de _remote-tracking_ `origin/main`
> :bulb: Le serveur n'accepte les changements que s'ils consistent à **raccrocher des commits manquants derrière un commit présent sur le serveur** (_fast-forward_). Lorsque plusieurs contributeurs travaillent sur des clones locaux d'un même dépôt distant, l'envoi de commits par un contributeur peut échouer car de nouveaux commits ont pu être déposés par un autre contributeur avant la comparaison locale des historiques (_non fast-forward_). Cette situation est courante, donne lieu à une resynhcronisation aval (`pull`) et éventuellement une résolution locale de conflits de modifications.
> :bulb: Le serveur n'accepte les changements que s'ils consistent à **raccrocher des commits manquants derrière un commit présent sur le serveur** (_fast-forward_).
>
> Lorsque plusieurs contributeurs travaillent sur des clones locaux d'un même dépôt distant, l'envoi de commits par un contributeur peut échouer car de nouveaux commits ont pu être déposés par un autre contributeur avant la comparaison locale des historiques (_non fast-forward_). Cette situation est courante, donne lieu à une resynhcronisation aval (`pull`) et éventuellement une résolution locale de conflits de modifications.
Ici, cette opération se déroule normalement et conduit à ce que les dépôts locaux et distants soient de nouveau à jour :
Ici, cette opération se déroule normalement et conduit à ce que les dépôts locaux et distants soient de nouveau à jour :