2017-07-20 2 views
0

J'ai accidentellement annulé un commit qui n'était pas lié à mon travail depuis ma branche de fonctionnalité locale. J'ai poussé mes changements jusqu'à ma branche de fonctionnalité et j'étais sur le point d'émettre une demande d'extraction pour faire réviser mon code et je peux voir qu'il y a toute une série de changements non liés qui sont dus au retour que j'ai fait.Comment annuler une erreur GIT accidentelle à partir d'une branche?

Je peux voir l'identifiant de la validation que j'ai inversé dans BitBucket et je veux juste savoir quel est le moyen le plus simple d'annuler la restauration et de ramener le commit dans ma branche.

Je pourrais prendre une nouvelle branche du développement et ensuite passer par le processus de fusionner manuellement mes changements réels dans la nouvelle branche de fonctionnalité, mais je soupçonne qu'il ya une action beaucoup plus simple. Pour référence, toutes les opérations d'extraction, de traction et de poussée sont effectuées via des extensions GIT.

Répondre

1

Lorsque vous faites un git commit est un autre revenir créé, rétablissez le revert commit.

+0

Pouvez-vous faire ceci même si j'ai poussé les changements à la branche à distance et ai commis et poussé des changements puisque j'ai accidentellement fait le retour? – Juckky

+0

Oui, vous pouvez toujours trouver le commit et le rétablir. –

0

Simple réinitialisation juste à cette validation.

git reset --hard <commit_id> 

Ou

git cherry-pick <commit_id> # If you have other commits over it 
+0

Cela ne fonctionnerait que s'ils ne continuaient pas à travailler sur la branche après la restauration. –

+0

J'ai continué à travailler sur la branche après avoir fait le retour. – Juckky

+0

Alors, suivez simplement la deuxième solution et choisissez le commit unique. – hspandher