identifié par son SHA (pour l'exemple 0cb5c64):
<code bash>
git reset --hard 0cb5c64
</code>
Le blob précédemment pointé par le HEAD n'est alors plus référe... rder le dépôt avant toute modification.
</note>
<code bash>
git reflog expire --expire-unreachable=now --all
git gc --prune=now
</code>
===== Exemple =====
Dans l'exemple ci-dessous
et refaire les modifications sur cette branche.
<code bash>
# git branch m'indique que je suis bien sur... a été modifié
$ git status -s
M doc/cdc.adoc
</code>
Pour éviter d'avoir à annuler et recréer mes mo... l'index avec la commande **git reset**.
</note>
<code bash>
# Les modification sont sauvegardées dans u... l (applique le dernier stash)
$ git stash apply
</code>
Les modifications sont placées sur notre branc
fusionnées.
Se placer sur la branche souhaitée
<code bash>
$ git checkout master
</code>
Maintenant le HEAD est positionné sur master. Pour ne lister que les branches déjà fusionnées à master:
<code bash>
$ git branch --merged
experimental
* master
</code>
Dans l'exemple ci dessus, l'astérisque marque b
=
On souhaite modifier l'historique ci-dessous:
<code bash>
* 36d37a2 (HEAD -> master) Promtail: Config... oki
* 9d18d87 Modification réseau virtuel
. . .
</code>
Sur les 3 derniers commits, on souhaite regroup... it rebase avec l'option -i ou %%--interactive%%)
<code bash>
git rebase -i HEAD~3
</code>
L'éditeur est lancé, les différentes commandes disponibles sont lis
peut être annulé sans problème via la commande:
<code bash>
# Repositionne le pointeur HEAD sur le comm... t reset --soft HEAD^
$ git reset --soft HEAD~1
</code>
L'annulation présentée ci-dessus conserve les m... tions, on peut utiliser l'option **%%--hard%%**
<code bash>
$ git reset --hard HEAD^
# équivalent
$ git reset --hard HEAD~1
</code>
===== Références =====
* http://www.nikrou.
de pour facilement rectifier le dernier commit:
<code bash>
$ git commit --amend
</code>
Elle permet de combiner les changement dans la zone d'assemblage a... ommande en laissant vide la zone d'assemblage :
<code bash>
$ git commit --amend
</code>
Dans ce cas, seul le message sera édité/modifié.
===== Références