summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: ecda072)
raw | patch | inline | side by side (parent: ecda072)
author | Emil Medve <Emilian.Medve@Freescale.com> | |
Tue, 26 Jun 2007 23:40:58 +0000 (18:40 -0500) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Mon, 2 Jul 2007 08:33:44 +0000 (01:33 -0700) |
Some repositories might not use/have annotated tags (for example the
ones created with git-cvsimport) and git-submodule status might fail
because git-describe might fail to find a tag. This change allows the
status of a submodule to be described/displayed relative to lightweight
tags as well.
Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
ones created with git-cvsimport) and git-submodule status might fail
because git-describe might fail to find a tag. This change allows the
status of a submodule to be described/displayed relative to lightweight
tags as well.
Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-submodule.sh | patch | blob | history |
diff --git a/git-submodule.sh b/git-submodule.sh
index 67c78f2d3d9b867dd5e9c989aa6f9c4da1fbd301..c29e2c3c9dd0bf42cc6ac68f70aef1fc742c5207 100755 (executable)
--- a/git-submodule.sh
+++ b/git-submodule.sh
done
}
+set_name_rev () {
+ revname=$( (
+ unset GIT_DIR &&
+ cd "$1" && {
+ git-describe "$2" 2>/dev/null ||
+ git-describe --tags "$2" 2>/dev/null ||
+ git-describe --contains --tags "$2"
+ }
+ ) )
+ test -z "$revname" || revname=" ($revname)"
+}
+
#
# List all submodules, prefixed with:
# - submodule not initialized
say "-$sha1 $path"
continue;
fi
- revname=$(unset GIT_DIR && cd "$path" && git-describe $sha1)
+ revname=$(unset GIT_DIR && cd "$path" && git-describe --tags $sha1)
+ set_name_rev "$path" $"sha1"
if git diff-files --quiet -- "$path"
then
- say " $sha1 $path ($revname)"
+ say " $sha1 $path$revname"
else
if test -z "$cached"
then
sha1=$(unset GIT_DIR && cd "$path" && git-rev-parse --verify HEAD)
- revname=$(unset GIT_DIR && cd "$path" && git-describe $sha1)
+ set_name_rev "$path" $"sha1"
fi
- say "+$sha1 $path ($revname)"
+ say "+$sha1 $path$revname"
fi
done
}