Предположим, что-то вроде следующего:Выяснить зависимостей фиксации мы пытаемся выбрать вишню
HEAD/master
|
A<--B<--C<--D<--E<--F<--G<--J
^
official
Где official
находится филиал.
Я хотел, чтобы вишневый выбор 2 зафиксировал official
ветвь, например. E
и J
Оба эти фиксации были исправлениями, влияющими на те же 3 файла.
Когда я сделал git cherry-pick E
, все прошло нормально, но когда я сделал git cherry-pick J
У меня были некоторые конфликты.
Глядя на разницу, я понял, что мне нужно было также сделать винт для фиксации F, который сделал изменение в двух из этих трех файлов, которые менялись в основном на изменение определения метода, и J
было сделано поверх этого.
Так это было легко исправить, просто делая git cherry-pick F && git cherry-pick J
Вопроса:
Если бы я не знал об изменениях, сделанных в этих файлах и совершает F было большим коммит изменение много файлов: Есть еще один способ, чтобы выяснить, на которые совершают фиксацию, которую мы пытаемся выбрать, зависит от того, не вручную ли вручную записать файл в файл и совершить фиксацию по фиксации?
Итак, каков ваш рабочий процесс в таких случаях? Что вы нашли наиболее эффективным? – Jim
@ Jim: В общем, много проверок коммитов - в основном, что вы в итоге сделали. Комплексные вишневые подборки должны быть редкими, потому что инструменты не справляются с ними, и инструменты не справляются с чем-то частично, потому что они редки, что своего рода уловка-22. – torek