Как я могу привести в движение ужасно старую ветку с основной? - PullRequest
3 голосов
/ 29 марта 2012

Один из наших филиалов не работал в течение 10 месяцев, мы хотим ускорить его с помощью основного, но существует много конфликтов слияния. Как я могу просто сделать так, чтобы это было ответвлением от текущего и исключить все конфликты?

Ответы [ 3 ]

1 голос
/ 29 марта 2012

Если вы можете отказаться от каких-либо изменений в ветке foo, просто выполните:

git fetch origin
git checkout foo
git reset --hard origin/foo
0 голосов
/ 29 марта 2012

Звучит так, будто вы говорите, что вы просто хотите, чтобы все конфликты слияния исчезли, чтобы вы могли зафиксировать результаты слияния.Если это так, просто выполните команду «git rm» для всех файлов, которые отображаются как «нужно объединить / конфликтовать».После этого вы можете зафиксировать «старую ветку».Затем из новой базы кода скопируйте все файлы, которые вы удалили с помощью «git rm», добавьте их и подтвердите снова.Теперь у вас есть 1) весь новый код, 2) большая часть старого кода и 3) работа над ним, чтобы он заработал.

0 голосов
/ 29 марта 2012

Полагаю, что перебазирование будет невозможно, если ему 10 месяцев, потому что вы, вероятно, уже прошли через множество толчков между различными репозиториями разработчиков?

Похоже, если у вас слишком много фундаментальных различий в коде, кто-то просто должен будет смириться с этим и вручную выполнить работу по слиянию, по крайней мере, GIT должен указывать на всю работу, которая будет здесь сделана.

В противном случае вы всегда можете просто переписать нужные вам функции из старой ветки в последнюю кодовую базу, я полагаю? Как ни раздражает, но обычно довольно быстро воссоздать то, что вы уже сделали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...