diff options
| author | Michael Osipov <michael.osipov@siemens.com> | 2021-01-05 10:48:39 +0000 |
|---|---|---|
| committer | Ed Maste <emaste@FreeBSD.org> | 2022-09-06 19:31:39 +0000 |
| commit | a3c92efcaa1252bcff87884a76e7c4a9f2c4afc5 (patch) | |
| tree | d400c4c61710546d44ca0123526bbab2bd26b095 | |
| parent | 16354ca2d8c45e2e72bffbb61d99f5fe3858b6de (diff) | |
| download | src-a3c92efcaa1252bcff87884a76e7c4a9f2c4afc5.tar.gz src-a3c92efcaa1252bcff87884a76e7c4a9f2c4afc5.zip | |
newvers.sh: add support for gitup(1)
gitup writes a .gituprevision file into the shallow clone directory. Read that
file and print commit information only.
Submitted by: Michael Osipov <michael.osipov@siemens.com>
Pull Request: https://github.com/freebsd/freebsd-src/pull/449
While here, drop the redundant branch name from the git output and don't
count commits in shallow clones.
Reported by: Michael Osipov <michael.osipov@siemens.com>
MFC after: 2 weeks
PR: 252507
(cherry picked from commit a9fc14fbf445cffd18f34f6a602bdba84bb5a867)
| -rw-r--r-- | sys/conf/newvers.sh | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh index 542dae42b567..f8511a3f5912 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -190,6 +190,10 @@ if findvcs .git; then done fi +if findvcs .gituprevision; then + gituprevision="${VCSTOP}/.gituprevision" +fi + if findvcs .hg; then for dir in /usr/bin /usr/local/bin; do if [ -x "${dir}/hg" ] ; then @@ -217,9 +221,11 @@ fi if [ -n "$git_cmd" ] ; then git=$($git_cmd rev-parse --verify --short HEAD 2>/dev/null) - git_cnt=$($git_cmd rev-list --first-parent --count HEAD 2>/dev/null) - if [ -n "$git_cnt" ] ; then - git="n${git_cnt}-${git}" + if [ "$(git rev-parse --is-shallow-repository)" = false ] ; then + git_cnt=$($git_cmd rev-list --first-parent --count HEAD 2>/dev/null) + if [ -n "$git_cnt" ] ; then + git="n${git_cnt}-${git}" + fi fi git_b=$($git_cmd rev-parse --abbrev-ref HEAD) if [ -n "$git_b" -a "$git_b" != "HEAD" ] ; then @@ -232,6 +238,10 @@ if [ -n "$git_cmd" ] ; then git=" ${git}" fi +if [ -n "$gituprevision" ] ; then + gitup=" $(awk -F: '{print $2}' $gituprevision)" +fi + if [ -n "$p4_cmd" ] ; then p4version=`cd ${SYSDIR} && $p4_cmd changes -m1 "./...#have" 2>&1 | \ awk '{ print $2 }'` @@ -278,10 +288,10 @@ done shift $((OPTIND - 1)) if [ -z "${include_metadata}" ]; then - VERINFO="${VERSION}${svn}${git}${hg}${p4version} ${i}" + VERINFO="${VERSION}${svn}${git}${gitup}${hg}${p4version} ${i}" VERSTR="${VERINFO}\\n" else - VERINFO="${VERSION} #${v}${svn}${git}${hg}${p4version}: ${t}" + VERINFO="${VERSION} #${v}${svn}${git}${gitup}${hg}${p4version}: ${t}" VERSTR="${VERINFO}\\n ${u}@${h}:${d}\\n" fi |
