Відмовитись від вишні?


389

Я бігав git cherry-pick <hash>і мав конфлікти. Я не хочу вирішувати конфлікти, я просто хочу перервати вишню. Коли ви робите фактичне злиття (з git merge), це зручно git merge --abort. Який еквівалент збирання вишні?

Відповіді:


601

Ви можете зробити наступне

git cherry-pick --abort

Від git cherry-pickдок

--abort  

Скасуйте операцію і поверніться до стану попередньої послідовності.


6
Чи було видалено / додано опцію --abort у певній версії git? У мене працює git 1.7.4.1 і "git cherry-pick --abort" призводить до повідомлення про використання git cherry-pick. Я також схлипнув "git help cherry-pick" для "аборту" і нічого не знайшов.
— danns87

1
@ danns87 --abortопція стала доступною у версії 1.7.8 . Чи можливо для вас оновити?

4
так, це не працює. Більшість випадків я отримую це error: Entry '<unstaged file>' not uptodate. Cannot merge. З іншого боку, git reset --mergeце працює!
— кумархарш

@KumarHarsh, яку версію Git ви використовуєте?

1
> 1,8. Власне, це було через брудні файли в каталозі. Але git reset --mergeкоманда працює і тоді.
— кумархарш

73

Я знайшов відповідь git reset --merge- це очищує суперечливу спробу вибору вишні.


4
Чи відрізняється він від git reset --hard? Я використовую робочий процес відновлення, якщо що. Здається, у мене це виходить.
— x-yuri

3
в чому різниця між --mergeі --abort?
— ffghfgh

8

Для мене єдиним способом скинути невдалу спробу вишні було

git reset --hard HEAD

Це не дає відповіді на питання і лише пропонує операцію, яка може знищити дані.
— мартінкунев

2

Спробуйте також з опцією '--quit', яка дозволяє перервати поточну операцію та додатково очистити стан секвенсора.

--забудьте Забудьте про поточну операцію, що виконується. Можна використовувати для очищення стану секвенсора після невдалого вибору або повернення.

- Скасувати операцію та повернутись до стану попередньої послідовності.

скористайтеся довідкою, щоб побачити оригінальний документ із більш детальною інформацією, $ git допоможе вишня

Я б уникну «занадто суворий« git reset --hard HEAD », і ви могли б зробити ручну роботу.


Цього не повинно існувати. Git досить складний без двох способів скасування вишневого відбору, які мають незначно різний вплив на стан репо.
— Каз

Щоправда, це не дає мені жодної помилки, але не повністю виходить із стану команди.
— Ю Чен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.