Предположим, ваша компания решает изменить свой код-хостинг-провайдера или вы хотите, чтобы переместить свой репозиторий на другой хост.Это случается не часто, но бывает.Когда я был вынужден переехать ряд проектов Git к новому хозяину, он мне потребовалось некоторое время, чтобы найти точный метод .
Сделав много попыток, и пара не удается, и внимательно читать documentation__4 Git и | 1 , Я нашел надежную и эффективную way.Я думал, что, то, что каждый разработчик будет полезно знать, как перенести репозиторий к новому хозяину быстро и легко.Самое главное, чтобы убедиться, что ваши ветки и метки и ваш история коммитов все переехали .
Наконец, простой способ перемещения репозиторий на новый сервер .
Учимся, как это сделать Properly
Во-первых, мы должны принести все удаленные филиалы и теги из существующей хранилище в наш местный индекс:
git fetch origin
Но даже если все ветки и метки были извлечены и существуют в местном индекса, мы по-прежнему не будет иметь их копию, которая физически местные.И локальная копия требуется, чтобы перенести хранилище .
Мы можем проверить наличие отсутствующих отраслей, которые нам необходимо создать локальную копию.Давайте перечислим все существующие филиалы (локальные и удаленные), чтобы увидеть, являются ли мы пропускаем ни одной копии на месте:
git branch -a
* master
remotes/origin/develop
remotes/origin/master
remotes/origin/release/0.1
Мы можем легко сказать, из этого вывода, есть ли у нас локальные копии всех удаленных филиалов: Удаленные из них с префиксом remotes/origin/
пути, и местные какие нет.Так, только наш мастер филиал является локальным, в то время как remotes/origin/develop
и remotes/origin/release/0.1
нет.Это нормально — давайте просто создавать локальные копии:
git checkout -b develop origin/develop
git checkout -b release/0.1 origin/release/0.1
После создания локальных копий всего, мы можем еще раз проверят, все ли филиалы с remotes/origin/
префикса имеют соответствующие локальные копии (показано без префикса):
git branch -a
develop
master
* release/0.1
remotes/origin/develop
remotes/origin/master
remotes/origin/release/0.1
Сейчас мы точно знаем, что все ветви в репозитории хранятся локально, и мы готовы двигаться к …
Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров