На этот вопрос уже давно дан ответ, но он по-прежнему является лучшим результатом поиска, хотя это уже не лучшее решение, поэтому здесь оно звучит так:
Команда:
git for-each-ref refs/tags/$TAG --shell --format='
TAG=%(refname)
COMMIT=%(objectname)
TAGGER=%(tagger)
EMAIL=%(taggeremail)
DATE=%(taggerdate)
CONTENTS=%(contents)
'
- shell цитирует сценарии Shell. Существует также - perl , - python и - tcl .
Если вы не хотите записывать весь формат как параметр командной строки, вы также можете поместить его в file.txt и сделать это:
git for-each-ref refs/tags/<tag> --shell --format="$(cat file.txt)"
Выход:
TAG='refs/tags/4.1.0-RC1'
COMMIT='973cc103f942330550866588177fe53ea5765970'
TAGGER='ml_'
EMAIL='<ml@example.org>'
DATE='Fri Sep 16 14:14:50 2016 +0200'
CONTENTS='Release 3:
* INSTALL.md added.
* GIT.md modified.
'
Больше информации здесь:
https://git -scm.com / документы / ГИТ-за-каждый-исх