2017-02-14 18 views
1

У меня есть один файл в основной ветви, как Belows:Git слияния с -X аргумента для переопределения файла мастера филиала, но все еще есть некоторый удаленный код

void func(int a, string b) { 
    ... 
    if (a == 1) { 
     ... 
    } 
    ... 
} 

.... 
func(1, "test"); 
... 

Тогда я извлекаю новый филиал b1 и сделать некоторую работу и изменить файл:

void func(string c, string b) { 
    ... 

    ... 
} 

.... 
func("test", "test"); 
... 

Между тем, главный филиал был обновлен другими ребятами, так что мне нужно, чтобы объединить эту ветку (есть какая-то причина, я не могу перебазировать его). Так как там конфликтов слияния, я добавить -X аргумент:

git merge -X ours master 

Он работает, но с удаленным сегментом кода:

void func(string c, string b) { 
    ... 
    if (a == 1) { 
     ... 
    } 
    ... 
} 

.... 
func("test", "test"); 
... 

ли я пропустить некоторые аргументы, когда слияние?

+0

'-X ours' не работает на основе всего файла. См. Мой ответ здесь, на другой вопрос: http://stackoverflow.com/a/42104116/1256452 – torek

ответ

1

, так как есть слияние конфликтов, я добавить -й рассуждение

Это зависит когда вы добавили -X ours: вам необходимо правильно отменить первоначальное слияние, который имел конфликт (мерзавец слияние аварийного завершение), и проверьте состояние вашего кода перед попыткой нового слияния с опцией слияния -X ours.
Затем вы можете попробовать еще раз.

И вам нужно убедиться, что удаленный код был в том же строке, что и ваш собственный код (что означало бы конфликт, если бы указанный удаленный код был изменен новыми версиями в master): -X ours работает только в случае конфликта для эти линии.

+0

Да, я сначала попробовал «git merge master» и получил конфликт. Поскольку код текущей ветви - это то, что мне нужно, я добавляю -X ours. Проблема в том, что удаленный код все еще существует. Удаленный код не был изменен главной ветвью, но в том же файле есть что-то еще. –

+0

@FeiyuZhou Правда, но сначала нужно отменить свое слияние, а затем повторите попытку с помощью -X ours. – VonC

+0

да, я отменяю его с --abort –

 Смежные вопросы

  • Нет связанных вопросов^_^