Нещодавно мені знадобилося перенести один із проєктів із GitLab до GitHub. Якщо ви також хочете зробити щось подібне, ця інструкція для вас. Хоча в прикладах нижче я використовую GitLab і GitHub, такий самий підхід можна застосувати для «перенесення» репозиторію між будь-якими двома іншими сервісами чи віддаленими сховищами.
Насправді ми нічого фізично не переміщуємо. Усе, що треба зробити, — змінити адресу, на яку вказує origin
вашого локального репозиторію.
Крок 1. Перевірка поточних віддалених репозиторіїв
Спочатку подивимось, що у нас налаштовано як origin
:
git remote -v
Вивід може виглядати приблизно так:
origin git@gitlab.com:username/repo_name.git (fetch)
origin git@gitlab.com:username/repo_name.git (push)
Це означає, що origin
зараз вказує на репозиторій на GitLab і використовується для fetch
та push
.
Крок 2. Зміна адреси віддаленого репозиторію
Щоб «перенести» репозиторій на іншу платформу — наприклад, з GitLab на GitHub — достатньо оновити URL для origin
:
git remote set-url origin https://github.com/username/new_repo_name.git
Крок 3. Перевірка результату
Тепер знову перевіримо, куди вказує origin
:
git remote -v
Якщо побачимо:
origin https://github.com/username/new_repo_name.git (fetch)
origin https://github.com/username/new_repo_name.git (push)
Отже, все налаштовано правильно — ваш локальний репозиторій тепер «прив’язаний» до нового віддаленого сховища. Можна робити git push на GitHub (або будь-яку іншу вибрану платформу), і все буде працювати.