Список измененных файлов
Поскольку перебазирование / слияние может занимать много времени, лучше избегать ненужного.Существует множество способов узнать, что изменилось, в зависимости от того, какая информация вам нужна.
Если вам интересно узнать, какие файлы были изменены, я бы предложил git-log
:
git log [--pretty=<format>] --name-only <common-branch>..<local-branch>
Вы можете использовать опцию --pretty
, чтобы получить необходимую информацию заголовка;<format>
может быть различным выбором, включая пользовательскую строку с полями - для получения дополнительной информации см. Справочную страницу.
Опция --name-only
фактически передается на git-diff
, так что если вы неЕсли вам не нужны результаты для каждого коммита, вы можете перейти непосредственно к источнику:
git diff --name-only <common-branch> <local-branch>
Обратите внимание, что ветви для этих двух команд указаны по-разному.
Это можно применить ктакже изменяется восходящий поток, изменяя <local-branch>
на <upstream-branch>
и заканчивая двумя списками файлов.Я оставлю это на ваше усмотрение, чтобы выяснить, как вы хотите сравнить их, хотя опция -f в grep может быть полезна ...
Ручное слияние
Самодержавие побеждает меня в этом,Если вы сделали некоторую интеллектуальную обработку, основанную на выводе git-log
, вы можете редактировать только те коммиты, которые, как вы видели, имели перекрывающиеся изменения файла.Если бы вы выполняли слияние, а не перебазирование, вы бы использовали опцию --no-commit
.
См. Также раздел конфигурации справочной страницы git-merge
.Возможно, вы захотите установить для merge.conflictstyle значение diff3, чтобы вы могли видеть исходный текст, а также изменения с обеих сторон.
Если вы действительно отчаянно пытаетесь подавить все попытки автоматического разрешения конфликтов, яЯ полагаю, что вы можете подключить фиктивный mergetool (через merge.tool и mergetool.cmd), который ничего не делает и возвращает ошибку.
Сказав все это, я также должен сказать, что в моем опыте с git merges явидел много конфликтов, но не могу вспомнить ни одного неправильного автоматического слияния.Я лично верю, что это возможности слияния.Проверки после этого должно быть много.