Как объединить длинные истории в двух разных репозиториях в git - PullRequest
0 голосов
/ 16 июля 2011

У меня есть репозиторий на github, над которым я и мой друг работаем одновременно.Мы расширили наши локальные копии мастера на github и добавили множество функций в наши отдельные ветки.Но мы только передали наши локальные копии (не ту, что на github).Как мне управлять историями и коммитами так, чтобы оба наших коммита отражались в репозитории github (без потока конфликтов слияния)?Спасибо.

Плюс, как мне разрешить конфликты и патчи?Может ли кто-нибудь предоставить визуальное представление о проблеме и о том, как ее решить (чтобы я мог лучше понять ее).

Ответы [ 3 ]

1 голос
/ 16 июля 2011

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

`git merge <commit point a>`

сначала разрешите некоторые конфликты

`git merge <commit point b>`

сначала решить некоторые конфликты

`git merge <commit point c>`

решить последнюю часть конфликтов

, где a, b, c - точка фиксации в sha-1 и a Я думаю, это немного облегчит твою боль.

1 голос
/ 16 июля 2011

Вам обоим придется

  • Слияние с пультом (Github)
  • Нажмите для дистанционного (Github)

Слияние может привести к конфликтам. Там нет пути , вот как работает Git. Итак, мой совет; для будущих проектов часто объединяйте и нажимайте, чтобы избежать конфликтов, особенно если вы, вероятно, работаете над одним и тем же.

0 голосов
/ 16 июля 2011

Предполагается, что оба работали над веткой master и все изменения должны идти в ветку master на Github.Не используйте pull, но fetch и rebase (описано в git ready )

  1. Один из вас обоих (скажем, 1) должен push первымGithub (предпочтительно тот, у которого меньше изменений)
  2. Другой (скажем, 2) fetch es из Github (НЕ тяните): git fetch github/master
  3. Затем 2 делает git rebase github/master
  4. 2 разрешает некоторые конфликты
  5. 2 делает git push для Github
  6. 1 делает git pull из Github и, безусловно, не конфликтует
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...