Какую команду можно использовать для распечатки идентификатора коммита HEAD?
Это то, что я делаю вручную:
$ cat .git/HEAD
ref: refs/heads/v3.3
$ cat .git/refs/heads/v3.3
6050732e725c68b83c35c873ff8808dff1c406e1
Но мне нужен скрипт, который может надежно передать вывод какой-либо команды в текстовый файл, так что текстовый файл содержит в точности идентификатор фиксации HEAD (ничего более или менее, а не просто ссылку). Кто-нибудь может помочь?
git
version-control
Эндрю Арнотт
источник
источник
Ответы:
Используйте команду:
Для короткой версии:
источник
git rev-parse --short HEAD
подойдет.только для фиксации id
источник
Старая тема, еще для дальнейшего использования ... :) даже следующие работы
по умолчанию HEAD отфильтровывается. Будьте осторожны, следуя, хотя; множественные "головы" с 's' в конце. Следующая команда показывает ветки под "refs /глав"
источник
git show-ref --heads
и 6290 строкgit show-ref --head
. так что если вам нужен только один хеш, это может дать не тот результат, который вы ожидаете.Можно указать
git log
параметры, чтобы отображать только последний коммит,-1
и формат, который включает только идентификатор коммита, например:git log -1 --format=%H
Если вы предпочитаете сокращенный идентификатор фиксации:
git log -1 --format=%h
источник
Играть с Bash:
источник
Согласно https://git-scm.com/docs/git-log , для более приятного вывода в консоли вы можете использовать аргумент --decorate команды git-log :
напечатает:
источник
git rev-parse --abbrev-ref HEAD
источник
Вы можете использовать эту команду
$ git rev-list HEAD
Вы также можете использовать команду
head
Unix для отображения последнихn
HEAD
коммитов, таких как$ git rev-list HEAD | head - 2
источник
Ты можешь использовать
чтобы увидеть
git reflog
информацию, отформатированную какgit log
выводисточник