summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/cli.zsh7
-rwxr-xr-xtools/changelog.sh6
2 files changed, 7 insertions, 6 deletions
diff --git a/lib/cli.zsh b/lib/cli.zsh
index 0a85402df..ec59d1d44 100644
--- a/lib/cli.zsh
+++ b/lib/cli.zsh
@@ -791,12 +791,13 @@ function _omz::version {
# Get the version name:
# 1) try tag-like version
- # 2) try name-rev
- # 3) try branch name
+ # 2) try branch name
+ # 3) try name-rev (tag~<rev> or branch~<rev>)
local version
version=$(command git describe --tags HEAD 2>/dev/null) \
+ || version=$(command git symbolic-ref --quiet --short HEAD 2>/dev/null) \
|| version=$(command git name-rev --no-undefined --name-only --exclude="remotes/*" HEAD 2>/dev/null) \
- || version=$(command git symbolic-ref --quiet --short HEAD 2>/dev/null)
+ || version="<detached>"
# Get short hash for the current HEAD
local commit=$(command git rev-parse --short HEAD 2>/dev/null)
diff --git a/tools/changelog.sh b/tools/changelog.sh
index 86774a7ea..49532a4a4 100755
--- a/tools/changelog.sh
+++ b/tools/changelog.sh
@@ -395,12 +395,12 @@ function main {
# Get the first version name:
# 1) try tag-like version, or
- # 2) try name-rev, or
- # 3) try branch name, or
+ # 2) try branch name, or
+ # 3) try name-rev, or
# 4) try short hash
version=$(command git describe --tags $until 2>/dev/null) \
- || version=$(command git name-rev --no-undefined --name-only --exclude="remotes/*" $until 2>/dev/null) \
|| version=$(command git symbolic-ref --quiet --short $until 2>/dev/null) \
+ || version=$(command git name-rev --no-undefined --name-only --exclude="remotes/*" $until 2>/dev/null) \
|| version=$(command git rev-parse --short $until 2>/dev/null)
# Get commit list from $until commit until $since commit, or until root commit if $since is unset