summary refs log tree commit diff
diff options
context:
space:
mode:
authorClint Adams <clint@users.sourceforge.net>2007-09-27 11:42:50 +0000
committerClint Adams <clint@users.sourceforge.net>2007-09-27 11:42:50 +0000
commitcdf6b4840c33c81f83e7f19e9c0ac68f0f893f99 (patch)
tree4e0561c3a90cbcb08df0bfd0035a5b1e056b50f9
parentaf359d24a42d70ef037d1e298cba99f053317a03 (diff)
downloadzsh-cdf6b4840c33c81f83e7f19e9c0ac68f0f893f99.tar.gz
zsh-cdf6b4840c33c81f83e7f19e9c0ac68f0f893f99.tar.xz
zsh-cdf6b4840c33c81f83e7f19e9c0ac68f0f893f99.zip
23841: complete tag hashes for git verify-tag.
-rw-r--r--ChangeLog5
-rw-r--r--Completion/Unix/Command/_git6
2 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 980827f62..64e72e1a6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-09-25  Clint Adams  <clint@zsh.org>
+
+	* 23841: Completion/Unix/Command/_git: complete tag hashes for git
+	verify-tag.
+
 2007-09-26  Peter Stephenson  <pws@csr.com>
 
 	* users/11883: Src/init.c: "return" at top level caused
diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index b89b0c97a..ade0b02f1 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -2676,6 +2676,12 @@ __git_signoff_file () {
 
 (( $+functions[__git_tag_ids] )) ||
 __git_tag_ids () {
+  local -a refs
+
+  refs=(${${(f)"$(_call_program tag_ids git ls-remote --tags ./. 2>/dev/null)"}%$'\t'*})
+  __git_command_successful || return
+
+  _wanted tag_id expl 'tag object hash' compadd - $refs
 }
 
 (( $+functions[__git_heads_or_tags] )) ||