Подтвердить что ты не робот

Как я могу git pull -rebase, но все удаленные изменения?

Я сделал git fetch, а затем git pull --rebase. Он пытается слить изменения с удаленной ветки на мою локальную ветвь. И есть некоторые конфликты слияния. Поэтому я сделал git reset --hard.

Мой вопрос: возможно ли, чтобы я спросил git pull, чтобы удалить удаленное изменение всякий раз, когда есть конфликт?

4b9b3361

Ответ 1

Я думаю, что вы хотите:

git pull --rebase -s recursive -X ours

Но он не работает (я использую 1.7.0.4), хотя manpage говорит, что он должен. Я предполагаю, что это связано с проблемой упомянутой здесь.

Вместо этого вы можете использовать:

git pull -s recursive -X theirs

Он работает так, как ожидалось, но вы получите слияние вместо rebase.

Также - обратите внимание на "наш", а не на "их" при использовании --rebase. Из git -rebase manpage:

[CLIP]... слияние с rebase работает, переигрывая каждую фиксацию из рабочей ветки поверх верхней ветки. Из-за этого, когда происходит конфликт слиянием, сторона, о которой сообщается, как наша, является так называемой переустановленной серией, начиная с восходящего потока, а их рабочая ветвь. Другими словами, стороны меняются местами.... [CLIP]