Rebase - автоматически продолжить, если рере разрешат все конфликты
Git rerere обеспечивает повторное использование предыдущих разрешений конфликтов во время rebase и может даже обрабатывать разрешенные файлы, установив rerere.autoupdate = True
(как подробно описано в другом вопросе). Однако, даже если все конфликты разрешены и все файлы поставлены, мне все равно нужно запустить git rebase --continue
, чтобы продолжить операцию переадресации.
Как я могу автоматически продолжить, если rerere
разрешил все конфликты и выполнил все изменения?
Ответы
Ответ 1
Нет. Rebase или Merge автоматически не предоставляет условие для автоматических коммитов при возникновении конфликтов. Вы можете больше узнать о git merge здесь в заголовке 'merging'. git config также не предоставляет возможность для автоматических фиксаций при перезагрузке. Обратите внимание, что при объединении вы можете выбрать "не делать".
Ответ 2
Rebase должна использовать больше rerere-autoupdate от Git 2.14.x/2.15 вперед (Q3 2017).
См. commit f826fb7, зафиксировать 8d8cb4b, commit 6f0e577, commit 9b6d7a6, commit 5fb415b, зафиксировать fd4a3f4 (02 августа 2017 г.) Phillip Wood (phillipwood
).
(объединено Junio C Hamano - gitster
- в совершить 1016495, 22 августа 2017 г.
Это потому, что теперь:
rebase
: честь --rerere-autoupdate
Rebase принимает '--rerere-autoupdate
' как опцию, но только чтит ее если "-m
" также указано.
Исправьте его для неинтерактивной перебазы, передав опцию "git am
" и "git cherry-pick
".
rebase -i
: честь --rerere-autoupdate
Интерактивная rebase игнорировала '--rerere-autoupdate
'.
Исправьте это, читая его соответствующим файлом при восстановлении состояния секвенсора для интерактивной перебазировки и передачи "--rerere-autoupdate
" для слияния и выбора вишни при перезагрузке с помощью "--preserve-merges
".