2015-12-10 3 views
1

У меня возник вопрос о слиянии двух репозиториев git.Git merge two repositories

Один репозиторий git, назовем его X, находится на GitHub и возглавляется одним членом команды. В то время как другой на BitBucket и сам по себе.

Вы должны спросить себя, почему именно мы это делаем? Основная причина в том, что мы переходим на BitBucket, в то время как некоторые работы по-прежнему выполнялись в то же время в обоих хранилищах.

Чтобы сократить историю, я хочу объединить эти два репозитория - без необходимости обрабатывать конфликты.

Я столкнулся с многочисленными сообщениями в StackOverflow, которые объясняют, как это сделать, но, к сожалению, ни один из них не помог.

Любые советы или рекомендации?

+2

Что вы подразумеваете под «без необходимости разрешения конфликтов»? Если вы объединяете любой расходящийся код, есть хорошая вероятность, что вы столкнетесь с конфликтами, если в двух хранилищах существуют конфликтующие изменения. Вы не сможете этого избежать. – DaveyDaveDave

ответ

2

У вас обязательно возникнут конфликты, чтобы их решить.

Вы можете создать новый репозиторий анс сделать начальное обязательство:

mkdir newRepository 
git init 
touch .gitignore 
git add .gitignore 
git commit .gitignore -m 'init' 

Затем извлечь и слить первый репо (скажем GitHub)

git remote add first pathTo/first 
git fetch first 
git merge first/master 

Затем извлечь и слить второй (bitbucket):

git remote add second pathTo/second 
git fetch second 
git merge second/master 

Затем выталкивайте все это в новое репозиторинг битбакет.