You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/git/exogit.qmd
+3-3Lines changed: 3 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -91,7 +91,7 @@ En revanche, l'intégration des dernières modifications de `main` vers une bran
91
91
92
92
Imaginons deux personnes qui collaborent sur un projet, Alice et Bob. Bob a mis de côté le projet quelques jours. Il veut récupérer les avancées faites par Alice pendant cette période. Celle-ci a fait évoluer le projet, supposons avec un seul _commit_ puisque cela ne change rien.
93
93
94
-
{#fig-history-simple}
94
+
{#fig-history-simple}
95
95
96
96
L'historique de Bob est cohérent avec celui sur `Github`, il lui manque juste le dernier _commit_ en bleu (@fig-history-simple). Il suffit donc à Bob de récupérer ce _commit_ en local avant de commencer à éditer ses fichiers.
97
97
@@ -105,7 +105,7 @@ Maintenant, imaginons le cas plus compliqué où Bob avait fait évoluer son cod
105
105
106
106
Son historique local diverge donc de l'historique distant:
107
107
108
-
{#fig-history-complicated}
108
+
{#fig-history-complicated}
109
109
110
110
Les derniers commits ne sont pas les mêmes. `Git` ne peut pas résoudre de lui-même la divergence. C'est à Bob de trancher sur la version qu'il préfère. Deux stratégies pour réconcilier les historiques sont accessibles:
111
111
@@ -138,7 +138,7 @@ Une fois les versions réconciliées, il ne reste plus qu'à faire un nouveau _c
138
138
139
139
Une autre approche est accessible, le _rebase_. _In fine_ ceci va correspondre à cet historique, propre.
Néanmoins ceci implique des étapes intermédiaires qui consistent à réécrire l'historique, ce qui est déjà une opération avancée. En fait, `Git` effectue trois étapes:
0 commit comments