Я не могу объяснить, почему ваша текущая версия не работает. Но обратите внимание: если вы хотите получить конкретный c размер сокращенного ha sh, вы можете сделать это напрямую, не используя grep. Просто запустите:
git log -n1 --format=%h --abbrev=7
Параметр формата %h
показывает сокращенное обозначение ha sh, а --abbrev
говорит, сколько символов использовать.
На основании дополнительных исследований, приведенных выше, Я подозреваю, что ваш рабочий каталог, когда вы запускаете, не такой, как вы думаете. Если я запускаю git log -n1 -- nosuchfile
(используя несуществующий файл), я не получаю никаких сообщений об ошибках, как я и ожидал; Я просто ничего не получаю. Это немного сбивает с толку, но заставляет меня думать, что ../inter/local.py
не существует, когда вы запускаете эту команду git
. Попробуйте добавить pwd
к вашей команде shell
, чтобы она распечатывала рабочий каталог перед запуском git:
CUR_LOC_VERSION:= $(shell pwd; git log --format=%h -n1 -- ../inter/local.py)
и посмотрите, что будет на выходе.