From fdc28957f5628afe45491872fa7969bb18ae4ea7 Mon Sep 17 00:00:00 2001 From: Kir Kolyshkin Date: Wed, 19 May 2021 23:10:31 -0700 Subject: [PATCH] Makefile: use git describe for $COMMIT Use "git describe --dirty --long" instead of "git rev-parse". As a result, the commit ID will contain the closest tag, the number of commits since the tag, and the (abbreviated) git commit sha (see example below). NOTE that this tag is still unique and can be used instead of bare sha for all git commands. Example output of "runc -v | grep commit". Before: commit: 4d875738716862d08a84c00211b1983c3044f711 After: commit: v1.0.0-rc95-9-g6f55d074 This means that - the closest tag is v1.0.0-rc95 - there were 9 commits after the tag - the abbreviated sha is 6f55d074 Signed-off-by: Kir Kolyshkin --- Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Makefile b/Makefile index aff6d531c..4c73e6ab7 100644 --- a/Makefile +++ b/Makefile @@ -10,8 +10,7 @@ GIT_BRANCH_CLEAN := $(shell echo $(GIT_BRANCH) | sed -e "s/[^[:alnum:]]/-/g") RUNC_IMAGE := runc_dev$(if $(GIT_BRANCH_CLEAN),:$(GIT_BRANCH_CLEAN)) PROJECT := github.com/opencontainers/runc BUILDTAGS ?= seccomp -COMMIT_NO := $(shell git rev-parse HEAD 2> /dev/null || true) -COMMIT ?= $(if $(shell git status --porcelain --untracked-files=no),"$(COMMIT_NO)-dirty","$(COMMIT_NO)") +COMMIT ?= $(shell git describe --dirty --long --always) VERSION := $(shell cat ./VERSION) # TODO: rm -mod=vendor once go 1.13 is unsupported