Comments on: Annuler les derniers commits avec Git http://sametmax.com/inverser-les-derniers-commits-avec-git/ Du code, du cul Sat, 07 Nov 2015 11:08:18 +0000 hourly 1 http://wordpress.org/?v=4.1 By: ben http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-159134 Wed, 15 Apr 2015 13:02:31 +0000 http://sametmax.com/?p=11208#comment-159134 Merci pour le tutot ;)

]]>
By: Sam http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-85086 Sat, 05 Jul 2014 02:51:32 +0000 http://sametmax.com/?p=11208#comment-85086 Cette command va aussi remettre à plat la copie de travail, et toute modif de celle-ci n’est pas dans l’histo git, donc on ne peut pas récupérer ça via git reflog.

Avec le squash, on obtient le même résultat, si tu fais el squash avant la publication des commits.

]]>
By: chaiyachaiya http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-84853 Fri, 04 Jul 2014 20:17:50 +0000 http://sametmax.com/?p=11208#comment-84853 Juste en passant, “…git reset –hard HEAD. Attention, cette dernière commande n’est pas réversible…” n’est pas tout à fait vrai.
La commande reflog de git permet de revenir à une position donnée du HEAD par lequel il est passé. Mais c’est un peu le coté obscur de git.

Sinon pour être sûr d’avoir bien compris. Si je faisais un revert pour chaque commit et qu’ensuite je squash l’ensemble des commits de revert en un seul commit, on obtient le même résultat ?

]]>
By: foxmask http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-84100 Fri, 04 Jul 2014 07:05:54 +0000 http://sametmax.com/?p=11208#comment-84100 un lien git merge vs rebase pour ceux qui passeraient par ici

]]>
By: Sam http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-80424 Wed, 02 Jul 2014 03:39:01 +0000 http://sametmax.com/?p=11208#comment-80424 Merci d’avoir insisté pour changer le titre. C’est le genre de chose qu’on a tendance à ne pas voir (et même à ne pas vouloir voir) quand on a écrit l’article. Si il y avait juste une personne qui m’avait dit ça, je ne l’aurais pas fait. Mais comme vous avez tous, gentiment et patiemment, expliqué qu’il fallait le changer, ça a finit par rentrer.

Je ne le répète pas assez, mais vous êtes un super lectorat et je suis très content de vous avoir en comment.

]]>
By: Sam http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-80422 Wed, 02 Jul 2014 03:37:02 +0000 http://sametmax.com/?p=11208#comment-80422 Ok pour le changement de titre.

Par contre, je fais pas de tuteux pour les giteux. Je le fais pour ceux qui pigent pas git. Et j’en vois tous les jours qui suivent les tutos à base de reset –hard et de rebase et autres joyeuseté et qui bousillent leur environnement de travail à cause de ça. Ils perdent des jours là dessus. Parfois ils abandonnent Git juste à cause de ça. Franchement ça m’énerve quand on donne ces techniques dangereuses, c’est irresponsable. Au moins mettre un label énorme en rouge, et proposer AVANT l’alternative safe. Les gens se rendent pas compte…

Par ailleurs, le fait de compacter ses commits pour un pull request est une problématique différente. Ici on parle d’annuler un commit, et je pense que c’est beaucoup plus clair d’avoir une trace de l’annulation dans l’historique. De plus, compacter, c’est nécessaire sur un gros projet pour la lisibilité de l’histo. Mais franchement, pour une équipe qui a 3 dev, ce n’est pas du tout nécessaire. Qu’on recommande ça partout, juste pour “avoir un bel historique” ça me fout les nerfs. Est-ce que vous savez combien de personnes se sont fait niquez en faisant un rebase ? C’est une technique super advance, à recommander uniquement à ceux qui savent ce qu’ils font.

]]>
By: kontre http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-80130 Tue, 01 Jul 2014 19:58:13 +0000 http://sametmax.com/?p=11208#comment-80130 Inverser a un autre sens de celui que ce que tu prends, Sam. Ça veut aussi dire prendre un truc, le mettre à la place d’un machin, et mettre le machin là où était le truc. C’est ce que j’avais compris de ton titre. Tu devrais changer ton titre, là c’est trop ambigu. Je préfère annuler: on a fait un truc, et on veut le défaire. Y’a plusieurs manières d’annuler, mais aussi plusieurs manières d’inverser !

ZZelle ne supprime rien et n’annule, elle chamboulle l’historique. en échangeant 2 commits. C’est dangereux, mais pas mal de giteux trouvent ça élégant, notamment pour les pull requests. Numpy demande à ce qu’un pull request soit compacté en un unique commit avant de merger, par exemple, pour garder l’hisorique global du projet plus clean.

]]>
By: Sam http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-79189 Tue, 01 Jul 2014 04:36:52 +0000 http://sametmax.com/?p=11208#comment-79189 Inverser: Mettre dans le sens contraire.

C’est ici exactement ce que l’on fait.

On avait les commit :

C
B
A

Et on fait un commit de plus, qui fait :

A
B
C
C
B
A

Le fait que le BCA soit fait en un seul commit ne doit pas vous tromper. On appliquer bien exactement l’inverse de la série de commit précédents.

Effectivement, on annule bien les dernier commits, dans le sens supprime leurs effets. On les annule en plaçant une série de modifications parfaitement symétriques : l’inverse des commits précédents.

La raison pour laquelle j’ai choisi inverser et non annuler comme mot, c’est que l’on peut annuler (supprimer les effets de) de plusieurs manières. Des manières qu’il vaut mieux éviter à moins de savoir exactement ce que l’on fait.

La méthode de ZZelle, annule les commits, mais pas par inversion. Par suppression. C’est ce qui rend la méthode dangereuse : en supprimant une partie de l’historique, on se maintenant s’assurer que tous les autres clones fassent la même modification (et pas d’autres) dans le même temps. Une situation très difficile à gérer.

]]>
By: G-rom http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-78964 Mon, 30 Jun 2014 21:04:49 +0000 http://sametmax.com/?p=11208#comment-78964 Idem, tu devrais mettre “annuler” au lieu de “inverser”. D’ailleurs @ZZelle t’as pris au mot, sa méthode inverse bien les 2 derniers commit

]]>
By: Sanao http://sametmax.com/inverser-les-derniers-commits-avec-git/#comment-78850 Mon, 30 Jun 2014 18:29:54 +0000 http://sametmax.com/?p=11208#comment-78850 Le terme plus exacte est annuler les derniers commits.

Je trouve que inverser est “confusant” au sens où l’on a l’impression que tu veux réécrire ton historique en changeant l’ordre de tes commits.

]]>