Przerwać git wiśniowy?

388

Uciekłem git cherry-pick <hash>i miałem konflikty scalania. Nie chcę rozwiązywać konfliktów, chcę po prostu zrezygnować z wyboru. Podczas rzeczywistego łączenia (z git merge) jest przydatna git merge --abort. Jaki jest odpowiednik zbierania wiśni?

agmin
źródło

Odpowiedzi:

600

Możesz wykonać następujące czynności

git cherry-pick --abort

Z git cherry-pickdokumentów

--abort  

Anuluj operację i powróć do stanu sprzed sekwencji.


źródło
6
Czy opcja --abort została usunięta / dodana w określonej wersji git? Korzystam z git 1.7.4.1, a „git cherry-pick --abort” powoduje wyświetlenie komunikatu o użyciu git cherry-pick. Wymieniłem też hasło „git help cherry-pick” na „abort” i nic nie znalazłem.
danns87
1
@ danns87 --abortopcja stała się dostępna w wersji 1.7.8 . Czy możesz uaktualnić?
4
tak, to nie działa Większość razy to dostaję error: Entry '<unstaged file>' not uptodate. Cannot merge. Z drugiej strony, git reset --mergedziała!
kumarharsh
@KumarHarsh, której wersji Git używasz?
1
> 1,8. W rzeczywistości było to spowodowane brudnymi plikami w katalogu. Ale git reset --mergepolecenie działa nawet wtedy.
kumarharsh
73

Uznałem, że odpowiedź brzmi git reset --merge- to usuwa sprzeczną próbę wyboru.

agmin
źródło
4
Czy to coś innego git reset --hard? Używam przepływu pracy w bazie danych, jeśli w ogóle. Wydaje mi się, że to działa.
x-yuri
3
Jaka jest różnica między --mergei --abort?
ffghfgh
8

Dla mnie jedynym sposobem na zresetowanie nieudanej próby pobrania z wiśni był

git reset --hard HEAD
Diego P. Steiner
źródło
To nie odpowiada na pytanie i sugeruje jedynie operację, która może zniszczyć dane.
martinkunev
2

Spróbuj również z opcją „--quit”, która pozwala przerwać bieżącą operację i dodatkowo wyczyścić stan sekwencera.

--quit Zapomnij o trwającej operacji. Można go użyć do wyczyszczenia stanu sekwencera po nieudanej operacji wybierania lub przywracania.

--abort Anuluj operację i powróć do stanu sprzed sekwencji.

skorzystaj z pomocy, aby zobaczyć oryginalny dokument z bardziej szczegółowymi informacjami, $ git help cherry-pick

Unikałbym „git reset - hard HEAD”, który jest zbyt trudny i może skończyć się ręczną pracą.

Yu Chen
źródło
To nie powinno istnieć. Git jest wystarczająco skomplikowany bez dwóch sposobów anulowania wyboru, które mają nieco inny wpływ na stan repo.
Kaz
To prawda, że ​​nie daje mi to żadnego błędu, ale nie do końca wychodzi ze stanu polecenia.
Yu Chen,