Gitlab: скопировать проект в другой репозиторий git lab
Я хочу скопировать проект gitlab в другой репозиторий, который будет полностью независим от исходного проекта.
По этой причине я попытался создать оригинальный проект в другом проекте. Но внутри оригинального проекта сопровождающий все еще может видеть список вилок и знает, где находятся другие вилки.
Я хочу получить полную копию без какой-либо ссылки на основной проект, чтобы он не мог управляться оригинальным сопровождающим проекта.
Как я могу это сделать?
5 ответов
Другой вариант - использовать функцию экспорта / импорта в Gitlab.
Разница с другим ответом заключается в том, что он также копирует следующее:
- Проект и репозитории вики
- Загрузка проекта
- Конфигурация проекта, включая услуги
- Проблемы с комментариями, запросы на слияние с различиями и комментариями, метками, вехами, фрагментами и другими объектами проекта
- Объекты LFS
Так что это зависит от вашего варианта использования: хотите ли вы просто скопировать коды или перенести другие части, конфигурации и т. Д., Перечисленные выше, в ваш другой проект. Результатом по-прежнему будут 2 отдельных проекта (например, не будут отображаться как форк).
Чтобы экспортировать, перейдите на страницу настроек вашего проекта> Общие:
Затем дождитесь письма с загружаемым tar.gz. файл.
(На моем Gitlab, если вы дважды нажмете кнопку, вы сможете скачать ее прямо из браузера.)
Затем для импорта в Gitlab выберите кнопку " Новый" > " Новый проект" в верхней панели.
Затем выберите " Импорт проекта" > " Экспорт Github".
Я бы клонировал исходный проект в песочнице на вашем локальном компьютере, создал новый проект там, где вы хотите, установил новое местоположение gitlab в качестве удаленного и нажал там.
Предполагая, что old_url и new_url - ваши старые и новые URL:
git clone <old_url>
cd <repo_dir_name>
git remote add new_remote <new_url>
git push --all new_remote
Предполагая, что ваш новый репо был пуст, когда вы сделали это, теперь он будет содержать все ветви и теги, которые существуют в исходном репо, без каких-либо связей с ним.
Другой вариант, когда у вас может не быть доступа к кнопке проекта экспорта GitLab, - это импорт напрямую с URL-адреса.
Другой вариант, в Настройки >> Общие >> продвижение >> удалить отношения вилки
помогает просто удалить все отношения с вышестоящим проектом.
Если ваша версия Gitlab намного старше новой, выполнить миграцию с помощью меню «Экспорт / импорт» невозможно.