LINUX.ORG.RU
ФорумAdmin

Перенос субмодуля на другой адрес

 ,


0

1

Есть развернутый gitlab, есть несколько проектов в глобальном нэймспейсе, которые используются в виде субмодулей в других проектах. С версии 6.0 глобальный нэймспейс в gitlab запретили, теперь нужно перенести проекты в нэймспейсы, но тогда у них изменится адрес. Как правильно поправить ссылки на эти проекты в других проектах?

Я вижу такие варианты:

Первый вариант: править в истории тот коммит, в котором добавлен субмодуль. Придется push -f делать и появляется проблема с ветками.

Второй вариант: поправить адрес и закоммитить. Тут проблема возникает со сборкой старых коммитов - придется править после каждого пула.

Как правильнее всего сделать?

★★★★

Последнее исправление: panter_dsd (всего исправлений: 1)

Наверное, правильнее использовать git subtree вместо модулей.

Или

git rebase -i --preserve-merges <в котором добавлен субмодуль>
git rebase --continue
git push -f

# Потом обновить все ветки

for branch in `git branch`; do
  git co $branch && \\
  git rebase -i --preserve-merges <в котором добавлен субмодуль> && \\
  git reset --hard <хеш изменённого коммита> && \\
  git rebase --continue || \\
  break
done

git push -f

backbone ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.