В Git-репозитории с именем Repo
есть 4 подмодуля:
git config --file .gitmodules --name-only --get-regexp path
submodule.A/lib1
submodule.A/lib2
submodule.lib3
submodule.lib4
Скажем, есть удаленная ветвь с именем Prototype
в подмодуле lib1
, которой нетбольше нужно:
git submodule foreach 'git branch -a | grep -i prototype || true'
Entering 'path-to-lib1/lib1'
remotes/origin/FeatureA
remotes/origin/Prototype
Entering 'path-to-lib2/lib2'
remotes/origin/FeatureB
Entering 'path-to-lib3/lib3'
Entering 'path-to-lib4/lib4'
remotes/origin/FeatureC
Как вы можете удалить эту Prototype
удаленную ветвь из подмодуля lib1
?
Я попробовал следующее:
git push origin --delete Prototype
или
git push origin --delete origin/Prototype
или
git push origin --delete remotes/origin/Prototype
Все 3 приведенные выше команды дают ошибку:
error: unable to delete 'Prototype': remote ref does not exist
error: failed to push some refs to 'repo-path'
( Я пытаюсь понять тему субмодулей, и я наткнулся на эту проблему, для которой мне не удалось найти ответ после некоторого онлайн-поиска. )
Любая команда / предложение с некоторым объяснением будет высоко ценится.