Как я могу определить, насколько далеко я нахожусь в git rebase при разрешении конфликтов? - PullRequest
8 голосов
/ 18 июля 2011

Я перебираюсь в git и сталкиваюсь со многими конфликтами.Я обращаюсь к каждому и делаю git rebase --continue, только чтобы встретить следующий конфликт.Как узнать, насколько я близок к успешному завершению ребазинга?

Ответы [ 4 ]

4 голосов
/ 18 июля 2011

Я не уверен, что вы можете измерить, как далеко вы должны пройти, но в нем указано, сколько коммитов в ребазе вы находитесь. В выводе ошибки есть строка, которая выглядит как

Patch failed at 0003 <commit message>

0003 означает, что вы три коммита в ребазе.

2 голосов
/ 03 мая 2017

Похоже, вы можете увидеть список патчей здесь:

.git/rebase-apply/[0-9]*
1 голос
/ 18 июля 2011

Если ваш вопрос касается того, сколько конфликтов уже разрешено, я обычно делаю быстрый

$ git diff

во время перебазирования. Конфликтующие части еще не будут поставлены (при условии, что вы используете git mergetool).

В качестве альтернативы вы также можете напрямую использовать grep для маркеров конфликта.

Если вы хотите узнать, сколько коммитов уже применено, просто используйте

$ git log REBASE_BASE..

где REBASE_BASE - коммит, на который вы перебазируете.

0 голосов
/ 17 июня 2015

Текстовый файл .git / sequencer / todo покажет вам следующие коммиты, которые будут перебазированы или выбраны черри.

Кроме того, в Windows оболочка Git Bash имеет статус прогресса перебазирования в приглашенииследующий формат:
(branch-name|REBASE 1/10)

Из Powershell я могу попасть в Git Bash с помощью этой команды:
sh --login

...