Как пометить все подмодули?

Я хотел бы отметить все подмодули моего проекта. Я пытался сделать это с:

git submodule foreach git tag tagName

... но, похоже, просто вернулся без ошибок, ничего не сделав.

Редактировать: Вот результаты моей попытки:

Может кто-нибудь сказать мне, как правильно пометить все подмодули?

Примечание: этот вопрос очень похож на этот пост, но ответ на этот вопрос предложил опираться на ссылки подмодулей в супер-проекте. Я, однако, на самом деле хотел бы тег в репо подмодуля.

1 ответ

Решение

Сначала убедитесь, что в папке вашего субмодуля есть содержимое:

git submodule update --init --recursive

Затем просто сделайте:

 git submodule foreach git tag -l

Вы должны увидеть, для каждого подмодуля, tagName,
То есть ваша предыдущая команда действительно пометила эти подмодули.

Я бы порекомендовал сделать аннотированный тег, но не легкий:

git submodule foreach git tag -m "tagName" tagName

Это означает, что вы можете вставить этот тег из каждого подмодуля.

Если вы просто пометите на родительском уровне репо, это будет включать подмодуль gitlink, то есть их SHA1. Этого может быть достаточно в вашем случае.

Другие вопросы по тегам