about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFrank Terbeck <bewater@users.sourceforge.net>2010-08-02 21:11:08 +0000
committerFrank Terbeck <bewater@users.sourceforge.net>2010-08-02 21:11:08 +0000
commit01b4a673102c7f20c9b6ef43dc2a3784c73a9391 (patch)
tree652cbd908eaa3a66088a5520db3d20b110670738
parent67e6e030d2ff6a11f341240974e056e8af0d80fe (diff)
downloadzsh-01b4a673102c7f20c9b6ef43dc2a3784c73a9391.tar.gz
zsh-01b4a673102c7f20c9b6ef43dc2a3784c73a9391.tar.xz
zsh-01b4a673102c7f20c9b6ef43dc2a3784c73a9391.zip
Seth House: 28114: vcs_info, git: Fix revision lookup with packed repositories.
-rw-r--r--ChangeLog6
-rw-r--r--Functions/VCS_Info/Backends/VCS_INFO_get_data_git7
2 files changed, 7 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index e3024200a..dce5b6503 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,10 @@
 	* Seth House: 28115: Misc/vcs_info-examples: Another git example
 	hook.
 
+	* Seth House: 28114:
+	Functions/VCS_Info/Backends/VCS_INFO_get_data_git: Fix revision
+	lookup with packed repositories.
+
 2010-08-02  Peter Stephenson  <pws@csr.com>
 
 	* Daiki Ueno: 28112: Src/Zle/zle_refresh.c: missing parentheses
@@ -13473,5 +13477,5 @@
 
 *****************************************************
 * This is used by the shell to define $ZSH_PATCHLEVEL
-* $Revision: 1.5045 $
+* $Revision: 1.5046 $
 *****************************************************
diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
index 979f0177a..01bf9f3f5 100644
--- a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
+++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
@@ -101,11 +101,8 @@ VCS_INFO_git_getbranch () {
 
 gitdir=${vcs_comm[gitdir]}
 gitbranch="$(VCS_INFO_git_getbranch ${gitdir})"
-if zstyle -t ":vcs_info:${vcs}:${usercontext}:${rrn}" get-revision && \
-    [[ ${gitbranch} == refs/* ]] && \
-    [[ -r "${gitdir}/${gitbranch}" ]] ; then
-
-    gitsha1="${"$(< $gitdir/$gitbranch)"}"
+if zstyle -t ":vcs_info:${vcs}:${usercontext}:${rrn}" get-revision ; then
+    gitsha1=$(${vcs_comm[cmd]} rev-parse --quiet --verify HEAD)
 else
     gitsha1=''
 fi