Git, определите, что локальная HEAD указывает на тег GIT - PullRequest
1 голос
/ 27 июня 2019

Как я могу определить, была ли проверена фактическая работа на основе тега?

Допустим, я выполняю следующую команду GIT:

 > git checkout 1.2.3

git status говорит мне, чтоменя мой HEAD "указатель" находится в отдельном состоянии.Это также может иметь место, если я извлекаю SHA напрямую, например, через:

 > git checkout f1d96551ab404de047c846a0a59f76e8505046c9 

Как я могу узнать, что HEAD фактически указывает на коммит, на котором есть тег?

Thx

Ответы [ 2 ]

3 голосов
/ 27 июня 2019
git tag --points-at HEAD

В нем перечислены теги, которые указывают на коммит HEAD.

Если тег 1.2.3 указывает на f1d96551ab404de047c846a0a59f76e8505046c9, и вы хотите узнать, что отсоединенная ГОЛОВКА из-за git checkout 1.2.3 или git checkout f1d96551ab404de047c846a0a59f76e8505046c9, выполните git reflog.

2 голосов
/ 27 июня 2019

Если ваш HEAD указывает напрямую (отдельно) на отмеченный коммит или на ветку, чья подсказка помечена,

git describe

будет выводить точное имя тега ТОЛЬКО ЕСЛИ он указывает на него напрямую, в противном случае к нему будет добавлен -<numberOfCommitsSinceTag>-g<commitHash>

Но, как sidenote, HEAD не может указывать на тег. Он всегда указывает на ветку или коммит.

(Также, если ваши теги репо имеют аннотированный тип, используйте флаг --tags для describe.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...