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

Импорт одного репозитория git в качестве ветки в другую репозицию git

По исторической причине у нас есть исходный код для другой версии в разных хранилищах git. Таким образом, хотя в проекте A содержится версия X источника Project B, выполняется версия Y источника.

Вы, ребята, знаете способ импортировать Project B как ветку проекта A?

Спасибо

4b9b3361

Ответ 1

Это просто с Git. Вы должны добавить проект B как удаленный, а затем выбрать:

git remote add projectB git://url.to/projectB.git
git fetch projectB

Ответ 2

Я не уверен, что вы подразумеваете под "git project". В git состояния исходного кода описываются commits (a.k.a. revisions). Они хранятся в репозиториях, но не зависят от них и могут свободно копироваться между репозиториями. Фактически, для работы с источниками git всегда копирует коммиты в ваш локальный репозиторий, который живет в каталоге .git вашей рабочей копии. Филиалы - это просто имена, указывающие на фиксации.

Итак, если у вас есть несколько ветвей в одном репозитории и других ветвях в другом репозитории, вы можете:

  • Потяните оба в локальный рабочий репозиторий:

    git remote add B git://url.to/project.B.git
    git fetch B
    
  • Основы работы с ветвями от B

    git checkout -b newname remotes/B/branchname
    
  • Нажмите ветки, которые вы получили из одного центрального репозитория, в другое:

    git push origin remotes/B/branchname:branchname
    

    или наоборот

    git push B remotes/origin/master:othername
    

Вы можете опустить префикс remotes/ большую часть времени.

Ответ 3

  • Первый проект клонирования A из git hub

git clone { git концентратор Project A URL}

  1. Добавить путь удаленного репозитория проекта B

git удаленный добавить projectBrepo { git проект-концентратор B URL}

  1. выделены ветки проекта В

git fetch projectBrepo

  1. проверить все ветки из проекта A и проекта B

git branch -v -a

  1. выберете имя каждой ветки из проекта B (например: master, branch_name1)

git checkout -b master_old remotes/projectBrepo/master

  1. Нажмите главную ветку из проекта B в проект A как master_old

git push origin master_old

  1. выписка branch_name1 из проекта B

git checkout -b имя_отделителя1 remotes/projectBrepo/branch_name1

  1. Нажимаем brnach_name1 из проекта B в проект A

git push origin имя_элемента1