Bonjour,
Je suis sous SourceTree, je souhaite revenir 2 commits en arrière, pour annuler ce qui a été fait par les 2 derniers commits.
Je fais comment ?
Merci,
Bonjour,
Je suis sous SourceTree, je souhaite revenir 2 commits en arrière, pour annuler ce qui a été fait par les 2 derniers commits.
Je fais comment ?
Merci,
Avec SourceTree pas la moindre idée, en revanche en ligne de commande pour supprimer les deux derniers commits de la branche courante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 git reset --hard HEAD~2
Bonjour Marco,
En lisant ce que tu as posté en ligne de commande j'ai cherché dans SourceTree et j'ai trouvé la correspondance en clickodrome ;-)
1- Se positionner sur le commit que l'on souhaite rétablir.
2- Click droit et choisir "Reset current branch to this commit"
3- Dans le panneau "Reset to Commit..." dans Using mode choisir "Hard - discard all working copy changes"
En fait il y a un problème supplémentaire.
Ce projet est également sur GitHub.
Ayant fait le Reset localement, SourceTree m'indique qu'origin/Master est 2 commits en avance et me propose de faire un Pull.
Pull qui me rétablirait mon repository local ?
Je fais quoi ?
Alors premier point : Ne jamais travailler directement sur la branche d'intégration des devs (master en l'occurrence). Tu crées une branche, tu fais tes modifs dessus puis tu pousses et tu ouvres une merge/pull request (merge ou pull dépend de l'outil utiliser, github appelle ça des pull request et gitlab des merge request) de cette branche vers master.
Deuxième point : Ne jamais modifier l'historique d'une branche publique. Ta branche est publiée donc impossible de supprimer les commits.
Si tu souhaites annuler les modifications des deux précédents commits, je te suggère de te pencher sur la commande revert qui crée des commits qui sont des miroirs inverses d'autres commits. Ca permet donc d'annuler des modifications sans casser l'historique.
Partager