У меня есть подмодуль git, настроенный для отслеживания определенной ветви:
[submodule "subproject"]
path = subproject
url = ../subproject.git
branch = v2.44
В моем скрипте сборки я хочу иметь возможность запрашивать ветку подпроекта, поэтому я использую cd subproject && git rev-parse --abbrev-ref HEAD
.Я ожидал бы, что это выведет v2.44
, но всегда выдает HEAD
.
Когда я вхожу в subproject/
и проверяю ветвь, я получаю:
git branch -v
* (HEAD detached at b69ac07) b69ac07 Another commit
master 36096e7 Some commit
Что происходитЗдесь?Почему я должен быть отсоединен, а не от ветви v2.44
?
Если я вручную git checkout v2.44
, родительский репозиторий git также не обнаружит каких-либо изменений в подмодуле, в отличие от того, что было бы git checkout v2.43
и затем он замечает, что подмодуль был изменен.