2014-02-04 3 views
2

Мне нужна команда git, которая выводит только сообщение данного аннотированного тега. Это почти возможно с git tag -ln:Распечатать сообщение git tag

$ git tag -ln v1.3.7 
v1.3.7   Here be annotations 

Это просто, что я не хочу, тег и пробелы в начале, и выбрасывая регулярное выражение на это чувствует себя излишним. Есть ли встроенный флаг, который я мог бы использовать? Я использую git версии 1.8.3.2.

Некоторые из ответов на Print commit message of a given commit in gitgit show --format=%B. Я не могу ограничить вывод только сообщением, ни для коммитов, ни для тегов.

ответ

1

Я не уверен, какая версия мерзавцев это требует, но с последними версиями вы также можете сделать:

git tag -l --format='%(contents)' <tag name>

получить только сообщение тега самого по себе.

-1

Вы можете настроить формат сообщений журнала git.

Git Basics - Viewing the Commit History

+0

Насколько я вижу, 'git log -format =% B -1 v1.3.7' только дает мне сообщение * commit * в теге. – lime

0

Я получил только сообщение (но сообщение содержит некоторые посторонние вещи, как PGP подписи и подписанной-офф-линиями), когда я сказал:

git show -s --format=%B <tag> 

Обратите внимание на -s.

+1

Да, я ожидал, что это сделает то, что я хочу. Тем не менее, лишний материал. Вы думаете, что, поскольку «git tag -ln» исключает его, можно было бы также отказаться от «show». – lime

Смежные вопросы