zsh-workers
 help / color / mirror / code / Atom feed
* Fix a typo in _git
@ 2007-10-18 21:23 Mikael Magnusson
  0 siblings, 0 replies; 27+ messages in thread
From: Mikael Magnusson @ 2007-10-18 21:23 UTC (permalink / raw)
  To: zsh-workers

Stumbled across this one just now.

--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -2570,7 +2570,7 @@ __git_tree_ishs () {

 (( $+functions[__git_blobs] )) ||
 __git_blobs () {
-  _git_guard $* "[[:xdigit:]]#" 'blob id'
+  __git_guard $* "[[:xdigit:]]#" 'blob id'
 }

 (( $+functions[__git_stages] )) ||


-- 
Mikael Magnusson


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (10 preceding siblings ...)
  2008-08-19  1:08 ` Clint Adams
@ 2008-08-19  1:41 ` Clint Adams
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-19  1:41 UTC (permalink / raw)
  To: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika


From: Mikael Magnusson <mikachu@gmail.com>
Date: Tue, 19 Aug 2008 01:10:13 +0000 (+0200)
Subject: Complete revs and files after `git bisect start`.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=f2886ca3b3180c9327784b90ab3fcb56c554a8a5

Complete revs and files after `git bisect start`.

I'm using _files here since the bisection works across a range of commits
that might have different paths in them anyway, and I think gathering
all paths across the whole range is just masochistic and very slow,
so might as well use the ones from the working dir.

The -- is optional so technically the second _arguments could have an
_alternative that also adds _files, but I think that would just make
the completion messier for little value.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 0e2efab..468ce14 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -1464,6 +1464,16 @@ _git-bisect () {
         _arguments \
           '*::arguments: _normal' && ret=0
         ;;
+      (start)
+        if (( words[(I)--] < CURRENT && words[(I)--] > 0 )); then
+          _arguments \
+            '*:paths:_files' && ret=0
+        else
+          _arguments \
+            '2:bad revision:__git_commits' \
+            '*:good revision:__git_commits' && ret=0
+        fi
+        ;;
 
       (*)
         _nothing


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (9 preceding siblings ...)
  2008-08-17 23:23 ` Mikael Magnusson
@ 2008-08-19  1:08 ` Clint Adams
  2008-08-19  1:41 ` Clint Adams
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-19  1:08 UTC (permalink / raw)
  To: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika

whitespace

From: Mikael Magnusson <mikachu@gmail.com>
Date: Sun, 17 Aug 2008 23:23:53 +0000 (+0200)
Subject: _git: Most confusing indentation in the history of mankind.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=b1b10fcea1f6b4fc9da7386bf38320d10bdd199b

_git: Most confusing indentation in the history of mankind.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 03ebe31..be32c96 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -4261,54 +4261,54 @@ __git_is_indexed () {
   [[ -n $(git ls-files $REPLY) ]]
 }
 
-  local curcontext=$curcontext ret=1
-
-  # fun with $words[] and $CURRENT to enable completion for args
-  # to git aliases (eg. git co <TAB>)
-  local -A git_aliases
-  # TODO: filling git_aliases like this is ugly. I didn't get it working elegantly.
-  local oifs=$IFS
-  IFS=$'\0'
-  git_aliases=(${=${(0)${(@)${${${(f)"$(git config --get-regexp alias.\*)"}/(#s)alias./}/ /$'\0'}}}})
-  IFS=$oifs ; unset oifs
-
-  if (( CURRENT >= 3 )) && [[ -n ${git_aliases[$words[2]]} ]] ; then
-    local -a tmpwords
-    tmpwords=(${words[1]} ${(z)git_aliases[$words[2]]})
-    if [[ -z "${words[3,-1]}" ]] ; then
-        tmpwords[$(( ${#tmpwords} + 1 ))]=""
-    else
-        tmpwords+=("${words[3,-1]}")
-    fi
-    words=("${tmpwords[@]}")
-    (( CURRENT += ${#${(z)git_aliases[$words[2]]}} - 1 ))
-    unset tmpwords
-  fi
-
-  if [[ $service == git ]]; then
-    local state line
-    declare -A opt_args
-    _arguments -C \
-      '(- :)--version[display version information]' \
-      '(- :)--help[display help message]' \
-      '--exec-path=-[path containing core git-programs]::directory:_directories' \
-      '(-p --paginate)'{-p,--paginate}'[pipe output into $PAGER]' \
-      '--git-dir=-[path to repository]:directory:_directories' \
-      '--bare[use $PWD as repository]' \
-      ':command:->command' \
-      '*::options:->options' && ret=0
-    case $state in
-      (command)
-        __git_aliases_and_commands
-        ;;
-      (options)
-        curcontext="${curcontext%:*:*}:git-$words[1]:"
-        _call_function ret _git-$words[1]
-        ;;
-    esac
+local curcontext=$curcontext ret=1
+
+# fun with $words[] and $CURRENT to enable completion for args
+# to git aliases (eg. git co <TAB>)
+local -A git_aliases
+# TODO: filling git_aliases like this is ugly. I didn't get it working elegantly.
+local oifs=$IFS
+IFS=$'\0'
+git_aliases=(${=${(0)${(@)${${${(f)"$(git config --get-regexp alias.\*)"}/(#s)alias./}/ /$'\0'}}}})
+IFS=$oifs ; unset oifs
+
+if (( CURRENT >= 3 )) && [[ -n ${git_aliases[$words[2]]} ]] ; then
+  local -a tmpwords
+  tmpwords=(${words[1]} ${(z)git_aliases[$words[2]]})
+  if [[ -z "${words[3,-1]}" ]] ; then
+      tmpwords[$(( ${#tmpwords} + 1 ))]=""
   else
-    _call_function ret _$service
+      tmpwords+=("${words[3,-1]}")
   fi
+  words=("${tmpwords[@]}")
+  (( CURRENT += ${#${(z)git_aliases[$words[2]]}} - 1 ))
+  unset tmpwords
+fi
+
+if [[ $service == git ]]; then
+  local state line
+  declare -A opt_args
+  _arguments -C \
+    '(- :)--version[display version information]' \
+    '(- :)--help[display help message]' \
+    '--exec-path=-[path containing core git-programs]::directory:_directories' \
+    '(-p --paginate)'{-p,--paginate}'[pipe output into $PAGER]' \
+    '--git-dir=-[path to repository]:directory:_directories' \
+    '--bare[use $PWD as repository]' \
+    ':command:->command' \
+    '*::options:->options' && ret=0
+  case $state in
+    (command)
+      __git_aliases_and_commands
+      ;;
+    (options)
+      curcontext="${curcontext%:*:*}:git-$words[1]:"
+      _call_function ret _git-$words[1]
+      ;;
+  esac
+else
+  _call_function ret _$service
+fi
 }
 
 _git


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-19  0:37                 ` Mikael Magnusson
  2008-08-19  0:39                   ` Mikael Magnusson
  2008-08-19  0:58                   ` Clint Adams
@ 2008-08-19  1:05                   ` Clint Adams
  2 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-19  1:05 UTC (permalink / raw)
  To: zsh-workers

On Tue, Aug 19, 2008 at 02:37:34AM +0200, Mikael Magnusson wrote:
> The man page and the command are both happy with -l -s. With recent git
> versions, the -l option is always a no-op anyway... But in all honesty,
> I think I just hadn't figured out what the (I) construction did then :).
> It is still mystifying to me why _git-branch cares where on the command-line
> the -v appears.

You don't need the local -a shared anymore in that case either.

Index: Completion/Unix/Command/_git
===================================================================
RCS file: /cvsroot/zsh/zsh/Completion/Unix/Command/_git,v
retrieving revision 1.80
diff -u -r1.80 _git
--- Completion/Unix/Command/_git	19 Aug 2008 01:01:06 -0000	1.80
+++ Completion/Unix/Command/_git	19 Aug 2008 01:03:59 -0000
@@ -1590,20 +1590,16 @@
 # TODO: The --no-checkout is undocumented.
 (( $+functions[_git-clone] )) ||
 _git-clone () {
-  local -a shared
-
-  if (( words[(I)(-l|--local)] )); then
-    shared=('(-s --shared)'{-s,--shared}'[share the objects with the source repository]')
-  fi
 
   _arguments \
     '--bare[make a bare GIT repository]' \
     '(-l --local)'{-l,--local}'[perform a local cloning of a repository]' \
-    $shared \
+    '(-s --shared)'{-s,--shared}'[share the objects with the source repository (warning: see man page)]'
     '--reference[reference repository]:repository:_directories' \
     '(-q --quiet)'{-q,--quiet}'[operate quietly]' \
-    '-n[do not checkout HEAD after clone is complete]' \
+    '(-n --no-checkout)'{-n,--no-checkout}'[do not checkout HEAD after clone is complete]' \
     '(-o --origin)'{-o,--origin}'[use given name instead of "origin" as branch name]:name:__git_guard_branch-name' \
+    '--no-hardlinks[copy files instead of hardlinking when doing a local clone]' \
     $upload_pack_arg \
     $template_arg \
     '--depth[create a shallow clone, given number of revisions deep]: :_guard "[[\:digit\:]]##" depth' \


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-19  0:37                 ` Mikael Magnusson
  2008-08-19  0:39                   ` Mikael Magnusson
@ 2008-08-19  0:58                   ` Clint Adams
  2008-08-19  1:05                   ` Clint Adams
  2 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-19  0:58 UTC (permalink / raw)
  To: zsh-workers

On Tue, Aug 19, 2008 at 02:37:34AM +0200, Mikael Magnusson wrote:
> Hmm yes, but what if you want to type --no-abbrev -v in that order?

Good point.  In that case, the my_abbrev bit seems like more trouble
than it's worth.


From: Mikael Magnusson <mikachu@comhem.se>
Date: Fri, 6 Jun 2008 02:07:03 +0000 (+0200)
Subject: _git: What is my_abbrev about?
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=6d178b4a0ad761e2e996dd8ee4de82604b6ee129

_git: What is my_abbrev about?
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 9236e0b..860cc94 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -1475,11 +1475,6 @@ _git-bisect () {
 # TODO: complete branch names?
 (( $+functions[_git-branch] )) ||
 _git-branch () {
-  local my_abbrev_arg
-  if (( words[(I)-v] > 0 && words[(I)-v] < CURRENT )); then
-    my_abbrev_arg=$abbrev_arg
-  fi
-
   declare -a dependent_deletion_args
   if (( words[(I)-d] || words[(I)-D] )); then
     dependent_deletion_args=(
@@ -1502,7 +1497,8 @@ _git-branch () {
       '(   -a)-r[list only the remote-tracking branches]' \
       '(-r   )-a[list both remote-tracking branches and local branches]' \
       '-v[show SHA1 and commit subject line for each head]' \
-      $my_abbrev_arg \
+      $abbrev_arg \
+      '--no-abbrev[do not abbreviate sha1s]' \
     - create \
       '-l[create the branch'\''s reflog]' \
       '-f[force the creation of a new branch]' \


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-19  0:37                 ` Mikael Magnusson
@ 2008-08-19  0:39                   ` Mikael Magnusson
  2008-08-19  0:58                   ` Clint Adams
  2008-08-19  1:05                   ` Clint Adams
  2 siblings, 0 replies; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-19  0:39 UTC (permalink / raw)
  To: zsh-workers

2008/8/19 Mikael Magnusson <mikachu@gmail.com>:

> Besides, isn't this what the (-v)--abbrev syntax is for? (Though that
> has always confused me, reading in the manpage at least suggests that's
> what it does, *fiddles with that a bit*.)

Ah, the old 'press send and understand' trick. the () syntax is the exact
opposite, ie if --abbrev is present, _don't_ complete -v.

-- 
Mikael Magnusson


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-19  0:25               ` Clint Adams
@ 2008-08-19  0:37                 ` Mikael Magnusson
  2008-08-19  0:39                   ` Mikael Magnusson
                                     ` (2 more replies)
  0 siblings, 3 replies; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-19  0:37 UTC (permalink / raw)
  To: zsh-workers

2008/8/19 Clint Adams <clint@zsh.org>:
> On Tue, Aug 19, 2008 at 02:09:38AM +0200, Mikael Magnusson wrote:
>> Oooh, that was tricky :).
>
> Re: my_abbrev: the man page seems to indicate that --abbrev and
> --no-abbrev are invalid without -v. Is that incorrect?

Hmm yes, but what if you want to type --no-abbrev -v in that order?

> Similar question for the git clone --local/--shared thing.

The man page and the command are both happy with -l -s. With recent git
versions, the -l option is always a no-op anyway... But in all honesty,
I think I just hadn't figured out what the (I) construction did then :).
It is still mystifying to me why _git-branch cares where on the command-line
the -v appears.

And also, it only checked if -v was present to complete --abbrev, but not
the other way around. Besides, isn't this what the (-v)--abbrev syntax
is for? (Though that has always confused me, reading in the manpage at least
suggests that's what it does, *fiddles with that a bit*.)

-- 
Mikael Magnusson


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-19  0:09             ` Mikael Magnusson
@ 2008-08-19  0:25               ` Clint Adams
  2008-08-19  0:37                 ` Mikael Magnusson
  0 siblings, 1 reply; 27+ messages in thread
From: Clint Adams @ 2008-08-19  0:25 UTC (permalink / raw)
  To: zsh-workers

On Tue, Aug 19, 2008 at 02:09:38AM +0200, Mikael Magnusson wrote:
> Oooh, that was tricky :).

Re: my_abbrev: the man page seems to indicate that --abbrev and
--no-abbrev are invalid without -v. Is that incorrect?

Similar question for the git clone --local/--shared thing.


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-18 22:45           ` Clint Adams
@ 2008-08-19  0:09             ` Mikael Magnusson
  2008-08-19  0:25               ` Clint Adams
  0 siblings, 1 reply; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-19  0:09 UTC (permalink / raw)
  To: zsh-workers

Oooh, that was tricky :).

2008/8/19 Clint Adams <clint@zsh.org>:
> On Mon, Aug 18, 2008 at 10:10:40PM +0200, Mikael Magnusson wrote:
>> Now that I actually rebased my stuff on top of latest cvs, and include
>> _call_program, I notice what I think is the reason I removed it: It
>> doesn't work. Does it work for you? It's kind of weird, all the other
>> _call_program in _git work fine, just the three git for-each-ref don't.
>> And they work fine with the _call_program \S+ removed...
>
> Oops.
>
> Index: Completion/Unix/Command/_git
> ===================================================================
> RCS file: /cvsroot/zsh/zsh/Completion/Unix/Command/_git,v
> retrieving revision 1.78
> diff -u -r1.78 _git
> --- Completion/Unix/Command/_git        18 Aug 2008 01:55:29 -0000      1.78
> +++ Completion/Unix/Command/_git        18 Aug 2008 22:43:19 -0000
> @@ -2972,7 +2972,7 @@
>   local expl
>   declare -a branch_names
>
> -  branch_names=(${${(f)"$(_call_program headrefs git for-each-ref --format='%(refname)' refs/heads refs/remotes 2>/dev/null)"}#refs/(heads|remotes)/})
> +  branch_names=(${${(f)"$(_call_program headrefs git for-each-ref --format='"%(refname)"' refs/heads refs/remotes 2>/dev/null)"}#refs/(heads|remotes)/})
>   __git_command_successful || return
>
>   _wanted heads expl branch-name compadd $* - $branch_names HEAD
> @@ -2983,7 +2983,7 @@
>   local expl
>   declare -a tag_names
>
> -  tag_names=(${${(f)"$(_call_program tagrefs git for-each-ref --format='%(refname)' refs/tags 2>/dev/null)"}#refs/tags/})
> +  tag_names=(${${(f)"$(_call_program tagrefs git for-each-ref --format='"%(refname)"' refs/tags 2>/dev/null)"}#refs/tags/})
>   __git_command_successful || return
>
>   _wanted tags expl tag-name compadd $* - $tag_names
> @@ -3036,7 +3036,7 @@
>   local expl
>   declare -a branch_names
>
> -  branch_names=(${${(f)"$(_call_program branchrefs git for-each-ref --format='%(refname)' refs/heads 2>/dev/null)"}#refs/heads/})
> +  branch_names=(${${(f)"$(_call_program branchrefs git for-each-ref --format='"%(refname)"' refs/heads 2>/dev/null)"}#refs/heads/})
>   __git_command_successful || return
>
>   _wanted branch-names expl branch-name compadd $* - $branch_names

-- 
Mikael Magnusson


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-18 20:10         ` Mikael Magnusson
@ 2008-08-18 22:45           ` Clint Adams
  2008-08-19  0:09             ` Mikael Magnusson
  0 siblings, 1 reply; 27+ messages in thread
From: Clint Adams @ 2008-08-18 22:45 UTC (permalink / raw)
  To: zsh-workers

On Mon, Aug 18, 2008 at 10:10:40PM +0200, Mikael Magnusson wrote:
> Now that I actually rebased my stuff on top of latest cvs, and include
> _call_program, I notice what I think is the reason I removed it: It
> doesn't work. Does it work for you? It's kind of weird, all the other
> _call_program in _git work fine, just the three git for-each-ref don't.
> And they work fine with the _call_program \S+ removed...

Oops.

Index: Completion/Unix/Command/_git
===================================================================
RCS file: /cvsroot/zsh/zsh/Completion/Unix/Command/_git,v
retrieving revision 1.78
diff -u -r1.78 _git
--- Completion/Unix/Command/_git	18 Aug 2008 01:55:29 -0000	1.78
+++ Completion/Unix/Command/_git	18 Aug 2008 22:43:19 -0000
@@ -2972,7 +2972,7 @@
   local expl
   declare -a branch_names
 
-  branch_names=(${${(f)"$(_call_program headrefs git for-each-ref --format='%(refname)' refs/heads refs/remotes 2>/dev/null)"}#refs/(heads|remotes)/})
+  branch_names=(${${(f)"$(_call_program headrefs git for-each-ref --format='"%(refname)"' refs/heads refs/remotes 2>/dev/null)"}#refs/(heads|remotes)/})
   __git_command_successful || return
 
   _wanted heads expl branch-name compadd $* - $branch_names HEAD
@@ -2983,7 +2983,7 @@
   local expl
   declare -a tag_names
 
-  tag_names=(${${(f)"$(_call_program tagrefs git for-each-ref --format='%(refname)' refs/tags 2>/dev/null)"}#refs/tags/})
+  tag_names=(${${(f)"$(_call_program tagrefs git for-each-ref --format='"%(refname)"' refs/tags 2>/dev/null)"}#refs/tags/})
   __git_command_successful || return
 
   _wanted tags expl tag-name compadd $* - $tag_names
@@ -3036,7 +3036,7 @@
   local expl
   declare -a branch_names
 
-  branch_names=(${${(f)"$(_call_program branchrefs git for-each-ref --format='%(refname)' refs/heads 2>/dev/null)"}#refs/heads/})
+  branch_names=(${${(f)"$(_call_program branchrefs git for-each-ref --format='"%(refname)"' refs/heads 2>/dev/null)"}#refs/heads/})
   __git_command_successful || return
 
   _wanted branch-names expl branch-name compadd $* - $branch_names


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-18  9:47       ` Mikael Magnusson
@ 2008-08-18 20:10         ` Mikael Magnusson
  2008-08-18 22:45           ` Clint Adams
  0 siblings, 1 reply; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-18 20:10 UTC (permalink / raw)
  To: zsh-workers

2008/8/18 Mikael Magnusson <mikachu@gmail.com>:
> 2008/8/18 Clint Adams <clint@zsh.org>:
>> On Sun, Aug 17, 2008 at 07:27:31PM +0200, Mikael Magnusson wrote:
>>> git branch is a UI command, it's not guaranteed to always indicate the current
>>> branch with a * for example. It also doesn't tell you if a branch is
>>> in refs/heads
>>> or refs/remotes. The completion doesn't differentiate between those yet, but
>>> it definitely should, I don't think I'll be able to fix that though.
>>>
>>> As for _call_program, I don't really know what the purpose of that is. I don't
>>> have a reason for not using it though.
>>
>>       _call_program tag string ...
>>              This function provides a mechanism for the user to over‐
>>              ride  the  use  of an external command.  It looks up the
>>              command style with the supplied tag.  If  the  style  is
>>              set,  its  value is used as the command to execute.  The
>>              strings from the call  to  _call_program,  or  from  the
>>              style  if set, are concatenated with spaces between them
>>              and the resulting string is evaluated.  The return  sta‐
>>              tus is the return status of the command called.
>
> Ah, I see.

Now that I actually rebased my stuff on top of latest cvs, and include
_call_program, I notice what I think is the reason I removed it: It
doesn't work. Does it work for you? It's kind of weird, all the other
_call_program in _git work fine, just the three git for-each-ref don't.
And they work fine with the _call_program \S+ removed...

-- 
Mikael Magnusson

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-18  1:46     ` Clint Adams
@ 2008-08-18  9:47       ` Mikael Magnusson
  2008-08-18 20:10         ` Mikael Magnusson
  0 siblings, 1 reply; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-18  9:47 UTC (permalink / raw)
  To: zsh-workers

2008/8/18 Clint Adams <clint@zsh.org>:
> On Sun, Aug 17, 2008 at 07:27:31PM +0200, Mikael Magnusson wrote:
>> git branch is a UI command, it's not guaranteed to always indicate the current
>> branch with a * for example. It also doesn't tell you if a branch is
>> in refs/heads
>> or refs/remotes. The completion doesn't differentiate between those yet, but
>> it definitely should, I don't think I'll be able to fix that though.
>>
>> As for _call_program, I don't really know what the purpose of that is. I don't
>> have a reason for not using it though.
>
>       _call_program tag string ...
>              This function provides a mechanism for the user to over‐
>              ride  the  use  of an external command.  It looks up the
>              command style with the supplied tag.  If  the  style  is
>              set,  its  value is used as the command to execute.  The
>              strings from the call  to  _call_program,  or  from  the
>              style  if set, are concatenated with spaces between them
>              and the resulting string is evaluated.  The return  sta‐
>              tus is the return status of the command called.

Ah, I see.

>> You have the same broken reply-to as the other guy, which means you
>> won't be in the to: field, and i have to remove myself manually each
>> time.
>> Either that, or gmail is doing something non-standard.
>
> You might mean Mail-Followup-To.

Okay, so it was gmail's fault then. It shows it as reply-to in the UI,
but when I click show original, i see it's mail-followup-to. I'll
admit I don't know everything there is to know about email headers,
and I'm sorry for falsely accusing you of doing something wrong :).

-- 
Mikael Magnusson

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-17 17:27   ` Mikael Magnusson
@ 2008-08-18  1:46     ` Clint Adams
  2008-08-18  9:47       ` Mikael Magnusson
  0 siblings, 1 reply; 27+ messages in thread
From: Clint Adams @ 2008-08-18  1:46 UTC (permalink / raw)
  To: zsh-workers

On Sun, Aug 17, 2008 at 07:27:31PM +0200, Mikael Magnusson wrote:
> git branch is a UI command, it's not guaranteed to always indicate the current
> branch with a * for example. It also doesn't tell you if a branch is
> in refs/heads
> or refs/remotes. The completion doesn't differentiate between those yet, but
> it definitely should, I don't think I'll be able to fix that though.
> 
> As for _call_program, I don't really know what the purpose of that is. I don't
> have a reason for not using it though.

       _call_program tag string ...
              This function provides a mechanism for the user to over‐
              ride  the  use  of an external command.  It looks up the
              command style with the supplied tag.  If  the  style  is
              set,  its  value is used as the command to execute.  The
              strings from the call  to  _call_program,  or  from  the
              style  if set, are concatenated with spaces between them
              and the resulting string is evaluated.  The return  sta‐
              tus is the return status of the command called.


> You have the same broken reply-to as the other guy, which means you
> won't be in the to: field, and i have to remove myself manually each
> time.
> Either that, or gmail is doing something non-standard.

You might mean Mail-Followup-To.

This changes the _call_program tags since the outputs are incompatible;
anyone with styles set for these will have them silently stop working.

Index: Completion/Unix/Command/_git
===================================================================
RCS file: /cvsroot/zsh/zsh/Completion/Unix/Command/_git,v
retrieving revision 1.75
diff -u -r1.75 _git
--- Completion/Unix/Command/_git	17 Aug 2008 14:05:59 -0000	1.75
+++ Completion/Unix/Command/_git	18 Aug 2008 01:44:40 -0000
@@ -2966,7 +2966,7 @@
   local expl
   declare -a branch_names
 
-  branch_names=(${${(f)"$(_call_program heads git branch --no-color -a 2>/dev/null)"}#[* ] })
+  branch_names=(${${(f)"$(_call_program headrefs git for-each-ref --format='%(refname)' refs/heads refs/remotes 2>/dev/null)"}#refs/(heads|remotes)/})
   __git_command_successful || return
 
   _wanted heads expl branch-name compadd $* - $branch_names HEAD
@@ -2977,7 +2977,7 @@
   local expl
   declare -a tag_names
 
-  tag_names=(${${(f)"$(_call_program tags git tag -l 2>/dev/null)"}#[* ] })
+  tag_names=(${${(f)"$(_call_program tagrefs git for-each-ref --format='%(refname)' refs/tags 2>/dev/null)"}#refs/tags/})
   __git_command_successful || return
 
   _wanted tags expl tag-name compadd $* - $tag_names
@@ -3030,7 +3030,7 @@
   local expl
   declare -a branch_names
 
-  branch_names=(${${(f)"$(_call_program branch-names git branch --no-color 2>/dev/null)"}#[* ] })
+  branch_names=(${${(f)"$(_call_program branchrefs git for-each-ref --format='%(refname)' refs/heads 2>/dev/null)"}#refs/heads/})
   __git_command_successful || return
 
   _wanted branch-names expl branch-name compadd $* - $branch_names


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-17 23:30   ` Mikael Magnusson
@ 2008-08-18  0:08     ` Phil Pennock
  0 siblings, 0 replies; 27+ messages in thread
From: Phil Pennock @ 2008-08-18  0:08 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers, Clint Adams

On 2008-08-18 at 01:30 +0200, Mikael Magnusson wrote:
> Apparently sometimes fixing typos breaks more than it fixes :). Sorry
> about gmail line-wrapping too...
> Here's the direct link to the patch since i can't make gmail not suck.

*cough*  Attachments should be passed unmolested, even by webmail
services.


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-17 23:23 ` Mikael Magnusson
@ 2008-08-17 23:30   ` Mikael Magnusson
  2008-08-18  0:08     ` Phil Pennock
  0 siblings, 1 reply; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-17 23:30 UTC (permalink / raw)
  To: zsh-workers; +Cc: Clint Adams

Apparently sometimes fixing typos breaks more than it fixes :). Sorry
about gmail line-wrapping too...
Here's the direct link to the patch since i can't make gmail not suck.
http://git.mika.l3ib.org/?p=zsh-cvs.git;a=commitdiff_plain;h=362b127e23341ab17988ef6ef2bf45dece5cbe8e

commit 362b127e23341ab17988ef6ef2bf45dece5cbe8e
Author: Mikael Magnusson <mikachu@gmail.com>
Date:   Mon Aug 18 01:21:04 2008 +0200

    _git: Fix a typo that looks like it should break more than it does.

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 52c2b41..047e666 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -2573,7 +2573,8 @@ _git-svn () {
           arguments+=('--stdin[read list of commits to commit from stdin]')
           ;;
         (show-ignore)
-          arguments+=('-r
--revision)'{-r,--revision)'[undocumented]:revision:->__git_svn_revisions'
+          arguments+=('-r
--revision)'{-r,--revision}'[undocumented]:revision:->__git_svn_revisions')
+          ;;
         (dcommit)
           arguments+=(
             '(-n --dry-run)'{-n,--dry-run}'[output git-commands that
would show diffs that would be committed]')


2008/8/18 Mikael Magnusson <mikachu@gmail.com>:
> % in vim just found this for me.
>
> commit 67345b5a05c7660933a73c7a458704c6df4b7411
> Author: Mikael Magnusson <mikachu@gmail.com>
> Date:   Mon Aug 18 01:21:04 2008 +0200
>
>    _git: Fix a typo that looks like it should break more than it does.
>
> diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
> index 52c2b41..0345f7e 100644
> --- a/Completion/Unix/Command/_git
> +++ b/Completion/Unix/Command/_git
> @@ -2573,7 +2573,7 @@ _git-svn () {
>           arguments+=('--stdin[read list of commits to commit from stdin]')
>           ;;
>         (show-ignore)
> -          arguments+=('-r
> --revision)'{-r,--revision)'[undocumented]:revision:->__git_svn_revisions'
> +          arguments+=('-r
> --revision)'{-r,--revision}'[undocumented]:revision:->__git_svn_revisions'
>         (dcommit)
>           arguments+=(
>             '(-n --dry-run)'{-n,--dry-run}'[output git-commands that
> would show diffs that would be committed]')
>
>
> --
> Mikael Magnusson
>



-- 
Mikael Magnusson


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (8 preceding siblings ...)
  2008-08-17 17:13 ` Clint Adams
@ 2008-08-17 23:23 ` Mikael Magnusson
  2008-08-17 23:30   ` Mikael Magnusson
  2008-08-19  1:08 ` Clint Adams
  2008-08-19  1:41 ` Clint Adams
  11 siblings, 1 reply; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-17 23:23 UTC (permalink / raw)
  To: zsh-workers; +Cc: Clint Adams

% in vim just found this for me.

commit 67345b5a05c7660933a73c7a458704c6df4b7411
Author: Mikael Magnusson <mikachu@gmail.com>
Date:   Mon Aug 18 01:21:04 2008 +0200

    _git: Fix a typo that looks like it should break more than it does.

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 52c2b41..0345f7e 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -2573,7 +2573,7 @@ _git-svn () {
           arguments+=('--stdin[read list of commits to commit from stdin]')
           ;;
         (show-ignore)
-          arguments+=('-r
--revision)'{-r,--revision)'[undocumented]:revision:->__git_svn_revisions'
+          arguments+=('-r
--revision)'{-r,--revision}'[undocumented]:revision:->__git_svn_revisions'
         (dcommit)
           arguments+=(
             '(-n --dry-run)'{-n,--dry-run}'[output git-commands that
would show diffs that would be committed]')


-- 
Mikael Magnusson


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-17 17:13 ` Clint Adams
@ 2008-08-17 17:27   ` Mikael Magnusson
  2008-08-18  1:46     ` Clint Adams
  0 siblings, 1 reply; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-17 17:27 UTC (permalink / raw)
  To: zsh-workers

2008/8/17 Clint Adams <clint@zsh.org>:
> On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
>> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika
>
> Not committing this one; what's the advantage of for-each-ref and why
> aren't you using _call_program?

git branch is a UI command, it's not guaranteed to always indicate the current
branch with a * for example. It also doesn't tell you if a branch is
in refs/heads
or refs/remotes. The completion doesn't differentiate between those yet, but
it definitely should, I don't think I'll be able to fix that though.

As for _call_program, I don't really know what the purpose of that is. I don't
have a reason for not using it though.

-- 
Mikael Magnusson

You have the same broken reply-to as the other guy, which means you
won't be in the to: field, and i have to remove myself manually each
time.
Either that, or gmail is doing something non-standard.


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (7 preceding siblings ...)
  2008-08-17 14:03 ` Clint Adams
@ 2008-08-17 17:13 ` Clint Adams
  2008-08-17 17:27   ` Mikael Magnusson
  2008-08-17 23:23 ` Mikael Magnusson
                   ` (2 subsequent siblings)
  11 siblings, 1 reply; 27+ messages in thread
From: Clint Adams @ 2008-08-17 17:13 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika

Not committing this one; what's the advantage of for-each-ref and why
aren't you using _call_program?

From: Mikael Magnusson <mikachu@comhem.se>
Date: Fri, 6 Jun 2008 02:24:23 +0000 (+0200)
Subject: Use git-for-each-ref instead of git-branch/tag.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=48535f35f07a878630fb1aab122429dae8f95383

Use git-for-each-ref instead of git-branch/tag.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 974cb6c..f1261ab 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -2902,7 +2902,8 @@ __git_heads () {
   local expl
   declare -a branch_names
 
-  branch_names=(${${(f)"$(_call_program heads git branch --no-color -a 2>/dev/null)"}#[* ] })
+  branch_names=(${${(f)"$(git for-each-ref --format='%(refname)' refs/heads refs/remotes 2>/dev/null)"}#refs/(heads|remotes)/})
+
   __git_command_successful || return
 
   _wanted heads expl branch-name compadd $* - $branch_names HEAD
@@ -2913,7 +2914,7 @@ __git_tags () {
   local expl
   declare -a tag_names
 
-  tag_names=(${${(f)"$(_call_program tags git tag -l 2>/dev/null)"}#[* ] })
+  tag_names=(${${(f)"$(git for-each-ref --format='%(refname)' refs/tags 2>/dev/null)"}#refs/tags/})
   __git_command_successful || return
 
   _wanted tags expl tag-name compadd $* - $tag_names
@@ -2966,7 +2967,7 @@ __git_branch_names () {
   local expl
   declare -a branch_names
 
-  branch_names=(${${(f)"$(_call_program branch-names git branch --no-color 2>/dev/null)"}#[* ] })
+  branch_names=(${${(f)"$(git for-each-ref --format='%(refname)' refs/heads 2>/dev/null)"}#refs/heads/})
   __git_command_successful || return
 
   _wanted branch-names expl branch-name compadd $* - $branch_names


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (6 preceding siblings ...)
  2008-08-16 18:29 ` Clint Adams
@ 2008-08-17 14:03 ` Clint Adams
  2008-08-17 17:13 ` Clint Adams
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-17 14:03 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika

Out of laziness, a bunch of changes combined:

Index: Completion/Unix/Command/_git
===================================================================
RCS file: /cvsroot/zsh/zsh/Completion/Unix/Command/_git,v
retrieving revision 1.74
diff -u -r1.74 _git
--- Completion/Unix/Command/_git	16 Aug 2008 18:33:30 -0000	1.74
+++ Completion/Unix/Command/_git	17 Aug 2008 14:02:31 -0000
@@ -69,6 +69,8 @@
                                                                      medium\:"most parts of the messages"
                                                                      short\:"few headers and only subject of messages"
                                                                      full\:"all parts of the commit messages"
+                                                                     fuller\:"like full and includes dates"
+                                                                     email\:"use email headers like From and Subject"
                                                                      oneline\:"commit-ids and subject of messages"))'
 
 exec_arg='--exec=-[specify path to git-upload-pack on remote side]:remote path'
@@ -84,9 +86,14 @@
 
 # TODO: Add descriptions to strategies (stupid is undocumented).
 merge_args=(
-  '(-n --no-summary)'{-n,--no-summary}'[do not show diffstat at the end of the merge]'
+  '(-n --no-stat)'{-n,--no-stat}'[do not show diffstat at the end of the merge]'
+  '--stat[show a diffstat at the end of the merge]'
   '--no-commit[perform the merge but do not autocommit]'
   '--squash[merge, but do not make a commit]'
+  '--log[fill in one-line descriptions of the commits being merged in the log message]'
+  '--no-log[do not list one-line descriptions of the commits being merged in the log message]'
+  '--no-ff[generate a merge commit even if the merge resolved as a fast-forward]'
+  '--ff[do not generate a merge commit if the merge resolved as a fast-forward]'
   '*'{-s,--strategy=-}'[use given merge strategy]:merge strategy:__git_merge_strategies'
 )
 
@@ -116,7 +123,9 @@
   $tags_fetch_arg
   '(-k --keep)'{-k,--keep}'[keep downloaded pack]'
   '(-u --update-head-ok)'{-u,--update-head-ok}'[allow updates of current branch head]'
-  '--depth=-[deepen the history of a shallow repository by the given number of commits]: :_guard "[[\:guard\:]]" "depth"'
+  '(-q --quiet)'{-q,--quiet}'[do not print any results to stdout]'
+  '(-v --verbose)'{-v,--verbose}'[output extra information]'
+  '--depth=[deepen the history of a shallow repository by the given number of commits]:depth'
 )
 
 common_apply_args=(
@@ -366,8 +375,8 @@
     '-l[show long rev]' \
     '-t[show raw timestamp]' \
     '-S[use revs from revs-file]:revs-file:_files' \
-    '-M-[detect moving lines in the file as well]:: :_guard "[[\:digit\:]]" "number of characters"' \
-    '*-C-[detect copied lines from other files from same commit as well]:: :_guard "[[\:digit\:]]" "number of characters"' \
+    '-M-[detect moving lines in the file as well]:number of characters' \
+    '*-C-[detect copied lines from other files from same commit as well]:number of characters' \
     '-L[annotate only the given line range]:line range' \
     '--contents[annotate against the given file if no rev is specified]:file:_files' \
     '--incremental[show results incrementally for machine processing]' \
@@ -483,6 +492,8 @@
 (( $+functions[_git-init] )) ||
 _git-init () {
   _arguments \
+    '(-q --quiet)'{-q,--quiet}'[do not print any results to stdout]' \
+    '--bare[create a bare repository]' \
     $shared_arg \
     $template_arg && ret=0
 }
@@ -552,7 +563,7 @@
     '(--revs)--all[include all refs as well as revisions already specified]' \
     '--all-progress[force progress output, even during write-out phase]' \
     '--delta-base-offset[use delta-base-offset packing]' \
-    '--depth=-[maximum delta depth]: :_guard "[[\:digit\:]]#" number' \
+    '--depth=[maximum delta depth]:number' \
     '--incremental[ignore objects that have already been packed]' \
     '--no-reuse-delta[do not reuse existing deltas, but compute them from scratch]' \
     '--non-empty[only create a package if it contains at least one object]' \
@@ -562,7 +573,7 @@
     '(:)--stdout[write the pack to standard output]' \
     '-q[do not report progress]' \
     '(--revs)--unpacked[limit objects to pack to those not already packed]' \
-    '--window=-[number of objects to use per delta compression]: :_guard "[[\:digit\:]]#" number' \
+    '--window=[number of objects to use per delta compression]:number' \
     '(--stdout):base-name:_files' && ret=0
 }
 
@@ -602,6 +613,8 @@
     $aggressive_arg \
     $ui_args \
     $exclude_per_directory_arg \
+    '--trivial[restrict three-way merge to only happen if no file-level merging is required]'  \
+    '--index-output=[write index in the named file instead of $GIT_INDEX_FILE]:file:_files' \
     '1:first tree-ish to be read/merged:__git_tree_ishs' \
     '2:second tree-ish to be read/merged:__git_tree_ishs' \
     '3:third tree-ish to be read/merged:__git_tree_ishs' && ret=0
@@ -676,8 +689,15 @@
             ':branch name:__git_remotes' \
             ':url:_urls' && ret=0
           ;;
-        (show|name|prune)
-          __git_remotes && ret=0
+        (show)
+          _arguments \
+            '-n[do not contact the remote for a list of branches]' \
+            ':remote:__git_remotes' && ret=0
+          ;;
+        (prune)
+          _arguments \
+            '(--dry-run -n)'{-n,--dry-run}'[do not actually prune, only list what would be done]' \
+            ':remote:__git_remotes' && ret=0
           ;;
         (update)
           __git_remote-groups && ret=0
@@ -734,24 +754,31 @@
     '--prefix=-[write tree representing given sub-directory]:sub-directory:_directories -r ""' && ret=0
 }
 
+# shouldn't complete objects after --batch{,-check}...
 (( $+functions[_git-cat-file] )) ||
 _git-cat-file () {
   _arguments \
-    '(   -s -e -p 1)-t[show the type of the given object]' \
-    '(-t    -e -p 1)-s[show the size of the given object]' \
-    '(-t -s    -p 1)-e[exit with zero status if object exists]' \
-    '(-t -s -e    1)-p[pretty-print the given object]' \
-    '(-t -s -e -p  ):object type:(blob commit tag tree)' \
-    '(-t -s -e -p  ):object:__git_objects' && ret=0
+    '(-t -s -e -p --batch-check         1)--batch[print the SHA1, type, size, and contents of each object provided on stdin]' \
+    '(-t -s -e -p               --batch 1)--batch-check[print the SHA1, type, and size of each object provided on stdin]' \
+    '(   -s -e -p --batch-check --batch 1)-t[show the type of the given object]' \
+    '(-t    -e -p --batch-check --batch 1)-s[show the size of the given object]' \
+    '(-t -s    -p --batch-check --batch 1)-e[exit with zero status if object exists]' \
+    '(-t -s -e    --batch-check --batch 1)-p[pretty-print the given object]' \
+    '(-t -s -e -p --batch-check --batch  ):object type:(blob commit tag tree)' \
+    '(-t -s -e -p --batch-check --batch  ):object:__git_objects' && ret=0
 }
 
 (( $+functions[_git-describe] )) ||
 _git-describe () {
   _arguments \
-    $abbrev_arg \
     '--all[use any ref found in "$GIT_DIR/refs/"]' \
-    '--tags[use any tag found in "$GIT_DIR/refs/tags/"]' \
+    '(--contains)--tags[use any tag found in "$GIT_DIR/refs/tags/"]' \
     $abbrev_arg \
+    '--contains[find the tag after the commit instead of before]' \
+    '--exact-match[only output exact matches, same as --canditates=0]' \
+    '--always[show uniquely abbreviated commit object as fallback]' \
+    '--long[always show full format, even for exact matches]' \
+    '--match=[only consider tags matching glob pattern]:pattern' \
     '--candidates=-[consider up to given number of canditates]: :_guard "[[\:digit\:]]##" "number of canditates"' \
     '--debug[display information about the searching strategy]' \
     '*:committish:__git_committishs' && ret=0
@@ -960,6 +987,8 @@
   _arguments -S \
     '--tags[only use tags to name the commits]' \
     '--refs=-[only use refs matching given pattern]: :_guard "?#" "shell pattern"' \
+    '--always[show uniquely abbreviated commit object as fallback]' \
+    '--no-undefined[die with non-zero return when a reference is undefined]' \
     '(--stdin :)--all[list all commits reachable from all refs]' \
     '(--all :)--stdin[read from stdin and append revision-name]' \
     '(--stdin --all)*:commit-ish:__git_revisions' && ret=0
@@ -975,7 +1004,6 @@
 }
 
 # TODO: --timestamp undocumented.
-# TODO: __git_commits2 should be reworked/reworded.
 (( $+functions[_git-rev-list] )) ||
 _git-rev-list () {
   if (( words[(I)--] && words[(I)--] != CURRENT )); then
@@ -992,7 +1020,7 @@
       '(         --bisect-vars)--bisect[show only the middlemost commit object]' \
       '(--bisect              )--bisect-vars[same as --bisect, outputing shell-evalable code]' \
       '--stdin[read commit objects from standard input]' \
-      '*:commit id:__git_commits2' && ret=0
+      '*:commit id:__git_commit_ranges2' && ret=0
   fi
 }
 
@@ -1021,6 +1049,7 @@
 
   _arguments -S \
     $revision_arguments \
+    '-s[do not show differences]' \
     '*:object:__git_objects' && ret=0
 }
 
@@ -1366,10 +1395,12 @@
 
   _arguments -C \
     '--format=-[format of the resulting archive]:archive format:__git_archive_formats' \
-    '(- :)--list[list available archive formats]' \
+    '(- :)'{-l,--list}'[list available archive formats]' \
+    '(-v --verbose)'{-v,--verbose}'[report progress to stderr]' \
     '--prefix=-[prepend the given path prefix to to each filename]:path prefix:_directories -r ""' \
     $backend_args \
     '--remote=-[archive remote repository]:remote repository:__git_any_repositories' \
+    '--exec=-[path to git-receive-pack on remote]:remote path:_files' \
     ':tree-ish:__git_tree_ishs' \
     '*:tree file:->files' && ret=0
 
@@ -1537,7 +1568,9 @@
     '(-e --edit)'{-e,--edit}'[edit commit before committing the revert]' \
     '(-n --no-commit)'{-n,--no-commit}'[do not make the actually commit]' \
     '(-r --replay)'{-r,--replay}'[use original commit message intact]' \
+    '(-m --mainline)'{-m,--mainline}'[specify mainline when cherry-picking a merge commit]:parent number' \
     '-x[append information about what commit was cherry-picked]' \
+    '(-s --signoff)'{-s,--signoff}'[add Signed-off-by line at the end of the commit message]' \
     ':commit:__git_revisions' && ret=0
 }
 
@@ -1546,6 +1579,7 @@
   _arguments -S \
     '-d[also remove untracked directories]' \
     '-n[do a dry run]' \
+    '-f[required when clean.requireForce is true (default)]' \
     '-q[run quietly]' \
     '(-X   )-x[also remove ignored files]' \
     '(   -x)-X[remove only ignored files]' \
@@ -1637,6 +1671,10 @@
     '--in-reply-to=[make the first mail a reply to the given message]:message id' \
     '--ignore-if-in-upstream[do not include a patch that matches a commit in the given range]' \
     '--suffix[use the given suffix for filenames]:filename suffix' \
+    '--subject-prefix=[use the given prefix instead of \[PATCH\]]:prefix' \
+    '--cc=[add a Cc: header, may be given multiple times]:email address' \
+    '--cover-letter[generate a cover letter template]' \
+    '--no-binary[do not output contents of changes in binary files, only note that they differ]' \
     ':commit range:__git_commit_ranges' && ret=0
 }
 
@@ -1734,13 +1772,14 @@
 
   _arguments -S \
     $revision_arguments \
+    '--decorate[print out ref names of any commits that are shown.]' \
     '*:file-or-branch:->files' && ret=0
 
   case $state in
     (files)
       _arguments -S \
         '::index file:__git_cached_files' \
-        '*::branch:__git_commit_ranges' && ret=0
+        '*::branch:__git_commit_ranges2' && ret=0
       ;;
   esac
 }
@@ -1796,7 +1835,9 @@
 _git-push () {
   _arguments \
     $force_ref_arg \
-    '--all[fetch all refs]' \
+    '--all[push all refs under refs/heads/]' \
+    '--mirror[push all refs under refs/heads/ and refs/tags/ and delete non-existing refs]' \
+    '--dry-run[do everything except actually send the updates]' \
     '--tags[all tags under "$GIT_DIR/refs/tags" are pushed]' \
     '(--receive-pack --exec)'{--receive-pack=-,--exec=-}'[path to git-receive-pack on remote]:remote path:_files' \
     '--repo=-[default repository to use]:repository:__git_any_repositories' \
@@ -1813,14 +1854,16 @@
     _message 'no more options'
   else
     _arguments \
-      '--onto[start new branch with HEAD equal to "newbase"]:newbase' \
+      '--onto[start new branch with HEAD equal to "newbase"]:newbase:__git_revisions' \
       '--continue[continue after failure]' \
       '--abort[abort current rebase]' \
       '--skip[skip the current patch]' \
-      '--merge[use merging strategies to rebase]' \
+      '--whitespace=-[detect a new or modified line that ends with trailing whitespaces]: :__git_apply_whitespace_strategies' \
+      '(-m --merge)'{-m,--merge}'[use merging strategies to rebase]' \
       '*'{-s,--strategy=-}'[use given merge strategy]:merge strategy:__git_merge_strategies' \
       $verbose_arg \
       '-C-[ensure that given lines of surrounding context match]: :_guard "[[\:digit\:]]##" "lines of context"' \
+      '(-i --interactive)'{-i,--interactive}'[make a list of commits to be rebased and open in $EDITOR]' \
       ':upstream branch:__git_revisions' \
       '::working branch:__git_revisions' && ret=0
   fi
@@ -1829,14 +1872,17 @@
 (( $+functions[_git-repack] )) ||
 _git-repack () {
   _arguments -s -w \
-    '-a[pack all objects into a single pack]' \
+    '(-A)-a[pack all objects into a single pack]' \
+    '(-a)-A[pack all objects into a single pack, but unreachable objects become loose]' \
     '-d[remove redundant packs after packing]' \
-    '-f[pass "--no-reuse-delta" option to "git pack-objects"]' \
+    '-f[pass "--no-reuse-objects" option to "git pack-objects"]' \
     '-l[pass "--local" option to "git pack-objects"]' \
     '-n[do not update server information]' \
     '-q[pass "-q" option to "git pack-objects"]' \
-    '--window=-[number of objects to consider when doing delta compression]' \
-    '--depth=-[maximum delta depth]' && ret=0
+    '--max-pack-size=-[maximum size of each output packfile]:MiB' \
+    '--window-memory=-[scale window size dynamically to not use more than N bytes of memory]:bytes' \
+    '--window=-[number of objects to consider when doing delta compression]:N' \
+    '--depth=-[maximum delta depth]:N' && ret=0
 }
 
 (( $+functions[_git-rerere] )) ||
@@ -1875,9 +1921,11 @@
 _git-revert () {
   _arguments -s -w \
     '(-e --edit)'{-e,--edit}'[edit the commit before committing the revert]' \
+    '--no-edit[do not edit the commit message]' \
     '-x[append commit name when cherry-picking]' \
     '(-m --mainline)'{-m+,--mainline=}'[pick which parent is mainline]:parent number' \
     '(-n --no-commit)'{-n,--no-commit}'[do not commit the reversion]' \
+    '(-s --signoff)'{-s,--signoff}'[add Signed-off-by line at the end of the commit message]' \
     ':commit:__git_commits' && ret=0
 }
 
@@ -2089,12 +2137,13 @@
     '*-M[attempt to detect merges based on the commit message with custom pattern]:pattern' \
     '-o[specify the branch into which you wish to import]:branch:__git_branch_names' \
     '-P[read cvsps output file]:file:_files' \
-    '-p[specify additionaly options for cvsps]:cvsps-options' \
+    '-p[specify additional options for cvsps]:cvsps-options' \
+    '-r[the git remote to import into]:remote' \
     '-s[substitute the "/" character in branch names with given substitution]:substitute' \
     '-u[convert underscores in tag and branch names to dots]' \
     '-S[skip paths matching given regex]:regex' \
     '-a[import all commits, including recent ones]' \
-    '-L[limit the number of commits imported]: :_guard "[[\:digit\:]]" limit' \
+    '-L[limit the number of commits imported]:limit' \
     $verbose_arg \
     '-z[specify timestamp fuzz factor to cvsps]:fuzz-factor' \
     ':cvsmodule' && ret=0
@@ -2364,6 +2413,8 @@
     '-n[don'\''t actually remove the files, just show if they exist in the index]' \
     '-r[allow recursive removal when a leading directory-name is given]' \
     '--cached[only remove files from the index]' \
+    '--ignore-unmatch[exit with 0 status even if no files matched]' \
+    '(-q --quiet)'{-q,--quiet}'[do not output files deleted]' \
     '*:files:__git_cached_files' && ret=0
 }
 
@@ -2508,7 +2559,7 @@
 
       if [[ $line[1] == (dcommit|log|rebase) ]]; then
         arguments+=(
-          '(- --verbose)'{-v,--verbose}'[output extra information]')
+          '(-v --verbose)'{-v,--verbose}'[output extra information]')
       fi
 
       case $line[1] in
@@ -2788,6 +2839,13 @@
   __git_commits $*
 }
 
+(( $+functions[__git_commit_ranges2] )) ||
+__git_commit_ranges2 () {
+  _alternative \
+    'commits::__git_commits2' \
+    'ranges::__git_commit_ranges'
+}
+
 # FIXME: these should be imported from _ssh
 # TODO: this should take -/ to only get directories
 _remote_files () {
@@ -4155,6 +4213,7 @@
     '(--dense         )--sparse[when paths are given, output only commits that changes any of them]'
     '--remove-empty[stop when a given path disappears from the tree]'
     '--no-merges[do not print commits with more than one parent]'
+    '--first-parent[follow only the first parent from merge commits]'
     '--boundary[output uninteresting commits at the boundary]'
     '--left-right[mark which side of a symmetric diff a commit is reachable from]'
     '(          --objects-edge)--objects[show object ids of objects referenced by the listed commits]'
@@ -4176,6 +4235,9 @@
     '--relative-date[show dates relative to the current time]'
     '--date=-[format of date output]:date format:((relative\:"show dates relative to the current time"
                                                    local\:"show timestamps in user'\''s local timezone"
+                                                   iso\:"show timestamps in ISO 8601 format"
+                                                   rfc\:"show timestamps in RFC 2822 format"
+                                                   short\:"show only date but not time"
                                                    default\:"show timestamp in the original timezone"))'
     '--author=-[limit commits to those by the given author]:author'
     '--committer=-[limit commits to those by the given committer]:committer'


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (5 preceding siblings ...)
  2008-08-16 17:59 ` Clint Adams
@ 2008-08-16 18:29 ` Clint Adams
  2008-08-17 14:03 ` Clint Adams
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-16 18:29 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika


From: Mikael Magnusson <mikachu@comhem.se>
Date: Fri, 6 Jun 2008 02:31:04 +0000 (+0200)
Subject: git-add and git-checkout options.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=94a521f7ba1d3d21858727f4df21cc9c09c628a0

git-add and git-checkout options.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index f1261ab..c946b29 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -1298,6 +1298,10 @@ _git-add () {
     '-v[show files as they are added]' \
     '-f[allow adding otherwise ignored files]' \
     '(-i --interactive : -)'{-i,--interactive}'[add contents interactively to the index]' \
+    '(-p --patch : -)'{-p,--patch}'[like -i but go directly into patch mode for specified files]' \
+    '-u[Update only files git already knows about]' \
+    '--refresh[do not add files, but refresh their stat() info in the index]' \
+    '--ignore-errors[continue adding if an error occurs]' \
     '*:file:->files' && ret=0
 
   case $state in
@@ -1507,6 +1511,9 @@ _git-checkout () {
       '-q[suppress feedback messages]' \
       '-f[force a complete re-read]' \
       '-b[create a new branch based at given branch]: :__git_guard_branch-name' \
+      {-t,--track}'[set up configuration so pull merges from the start point]' \
+      '--no-track[override the branch.autosetupmerge configuration variable]' \
+      '-l[create the branch'\''s reflog]' \
       $new_branch_reflog_arg \
       '-m[3way merge current branch, working tree and new branch]' \
       '::branch:__git_revisions' \


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (4 preceding siblings ...)
  2008-08-16 16:15 ` Clint Adams
@ 2008-08-16 17:59 ` Clint Adams
  2008-08-16 18:29 ` Clint Adams
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-16 17:59 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika


From: Mikael Magnusson <mikachu@comhem.se>
Date: Fri, 6 Jun 2008 01:52:57 +0000 (+0200)
Subject: Add --graph.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=058ba33df46b4d4f7c793146d04139184e5ca908

Add --graph.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 1c610d8..2e33269 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -4135,6 +4135,7 @@ __git_setup_revision_arguments () {
     '--tags[show all commits from refs/tags]'
     '--remotes[show all commits from refs/remotes]'
     '--cherry-pick[omit any same-change commits]'
+    '--graph[draw a graphical representation of the commit history]'
     '--reflog[show all commits from reflogs]'
     '(-g --walk-reflogs)'{-g,--walk-reflogs}'[walk reflog entries from most recent to oldest]'
     '*--not[reverses meaning of ^ prefix for revisions that follow]'


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (3 preceding siblings ...)
  2008-08-16 13:55 ` Clint Adams
@ 2008-08-16 16:15 ` Clint Adams
  2008-08-16 17:59 ` Clint Adams
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-16 16:15 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika


From: Mikael Magnusson <mikachu@comhem.se>
Date: Tue, 22 Apr 2008 12:49:30 +0000 (+0200)
Subject: Add git completion for --base/-1, --ours/-2 and --theirs/-3.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=023a9db0b08cc9b63378c429508266725275a04b

Add git completion for --base/-1, --ours/-2 and --theirs/-3.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index cb04d62..e8efa52 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -55,6 +55,9 @@ diff_args=(
   '(-a --text)'{-a,--text}'[treat all files as text]'
   '(-b --ignore-space-change -w --ignore-all-space)'{-b,--ignore-space-change}'[ignore changes in amount of white space]'
   '(-b --ignore-space-change -w --ignore-all-space)'{-w,--ignore-all-space}'[ignore white space when comparing lines]'
+  '(-1 --base)'{-1,--base}'[diff against stage 1]'
+  '(-2 --ours)'{-2,--ours}'[diff against stage 2]'
+  '(-3 --theirs)'{-3,--theirs}'[diff against stage 3]'
   $abbrev_arg
   $nul_arg
   '--exit-code[report exit code 1 if differences, 0 otherwise]'


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
                   ` (2 preceding siblings ...)
  2008-08-16 13:25 ` Clint Adams
@ 2008-08-16 13:55 ` Clint Adams
  2008-08-16 16:15 ` Clint Adams
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-16 13:55 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika


From: Mikael Magnusson <mikachu@comhem.se>
Date: Tue, 22 Apr 2008 13:12:22 +0000 (+0200)
Subject: _git: Add some -s -w to _arguments and new options for revert.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=82d690c2c0436354c1a07205c0431c4606bc2140

_git: Add some -s -w to _arguments and new options for revert.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index d0f5980..c7f8074 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -1821,7 +1821,7 @@ _git-rebase () {
 
 (( $+functions[_git-repack] )) ||
 _git-repack () {
-  _arguments \
+  _arguments -s -w \
     '-a[pack all objects into a single pack]' \
     '-d[remove redundant packs after packing]' \
     '-f[pass "--no-reuse-delta" option to "git pack-objects"]' \
@@ -1866,9 +1866,10 @@ _git-reset () {
 
 (( $+functions[_git-revert] )) ||
 _git-revert () {
-  _arguments \
-    '(-e --edit --no-edit)'{-e,--edit}'[edit the commit before committing the revert]' \
-    '(-e --edit --no-edit)--no-edit[do not start the commit message editor]' \
+  _arguments -s -w \
+    '(-e --edit)'{-e,--edit}'[edit the commit before committing the revert]' \
+    '-x[append commit name when cherry-picking]' \
+    '(-m --mainline)'{-m+,--mainline=}'[pick which parent is mainline]:parent number' \
     '(-n --no-commit)'{-n,--no-commit}'[do not commit the reversion]' \
     ':commit:__git_commits' && ret=0
 }


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
  2008-08-16  0:45 ` Clint Adams
  2008-08-16 12:56 ` Clint Adams
@ 2008-08-16 13:25 ` Clint Adams
  2008-08-16 13:55 ` Clint Adams
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-16 13:25 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika


From: Mikael Magnusson <mikachu@comhem.se>
Date: Fri, 6 Jun 2008 02:02:50 +0000 (+0200)
Subject: Complete HEAD as a head too.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=e5951399384c1435947511c2e7269436c6c56619

Complete HEAD as a head too.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 87b692f..2e33269 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -2904,7 +2904,7 @@ __git_heads () {
   branch_names=(${${(f)"$(_call_program heads git branch --no-color -a 2>/dev/null)"}#[* ] })
   __git_command_successful || return
 
-  _wanted heads expl branch-name compadd $* - $branch_names
+  _wanted heads expl branch-name compadd $* - $branch_names HEAD
 }
 
 (( $+functions[__git_tags] )) ||


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
  2008-08-16  0:45 ` Clint Adams
@ 2008-08-16 12:56 ` Clint Adams
  2008-08-16 13:25 ` Clint Adams
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-16 12:56 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika

And this one.

From: Mikael Magnusson <mikachu@comhem.se>
Date: Thu, 13 Mar 2008 15:49:30 +0000 (+0100)
Subject: Add the --branches/tags/remotes for rev-list to _git.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=e75b4201d9c21c0c127534365de524dd290a442d

Add the --branches/tags/remotes for rev-list to _git.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 3dc973a..b7c1cd3 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -4127,6 +4127,9 @@ __git_setup_revision_arguments () {
     '(          --until --before)--min-age[minimum age of commits to output]: :_guard "[[\:digit\:]]#" timestamp'
     '(--min-age --until --before)'{--until=-,--before=-}'[show commits older than given date]: :_guard "[[\:digit\:]]#" timestamp'
     '--all[show all commits from refs]'
+    '--branches[show all commits from refs/heads]'
+    '--tags[show all commits from refs/tags]'
+    '--remotes[show all commits from refs/remotes]'
     '--cherry-pick[omit any same-change commits]'
     '--reflog[show all commits from reflogs]'
     '(-g --walk-reflogs)'{-g,--walk-reflogs}'[walk reflog entries from most recent to oldest]'


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: Fix a typo in _git.
  2008-08-15 23:56 Mikael Magnusson
@ 2008-08-16  0:45 ` Clint Adams
  2008-08-16 12:56 ` Clint Adams
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 27+ messages in thread
From: Clint Adams @ 2008-08-16  0:45 UTC (permalink / raw)
  To: Mikael Magnusson; +Cc: zsh-workers

On Sat, Aug 16, 2008 at 01:56:36AM +0200, Mikael Magnusson wrote:
> I have some other _git patches too, but they're sort of jumbled up and have
> some XXXes, but if anyone is curious they can look here:
> http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika

Committing this one:

From: Mikael Magnusson <mikachu@comhem.se>
Date: Sun, 17 Feb 2008 18:08:01 +0000 (+0100)
Subject: make git diff and git log completion better.
X-Git-Url: http://git.mika.l3ib.org:1234/?p=zsh-cvs.git;a=commitdiff_plain;h=0a58b71d897896262f91cfe0bfa1c99d7761a179

make git diff and git log completion better.
---

diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index 20e8d1d..4592c66 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -1596,9 +1596,10 @@ _git-diff () {
   _arguments -S \
     $diff_args \
     '--cached[show diff between index and named commit]' \
-    '::original revision:__git_commits' \
-    '::new revision:__git_commits' \
-    '*::index file:__git_modified_files' && ret=0
+    '::commit range:__git_commit_ranges' \
+    '::original revision:__git_objects' \
+    '::new revision:__git_objects' \
+    '*::index file:__git_files' && ret=0
 }
 
 (( $+functions[_git-fetch] )) ||
@@ -1726,9 +1727,9 @@ _git-log () {
 
   case $state in
     (files)
-      _alternative \
-        'files:index file:__git_cached_files' \
-        'branches:branch:__git_branch_names' && ret=0
+      _arguments -S \
+        '::index file:__git_cached_files' \
+        '*::branch:__git_commit_ranges' && ret=0
       ;;
   esac
 }


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Fix a typo in _git.
@ 2008-08-15 23:56 Mikael Magnusson
  2008-08-16  0:45 ` Clint Adams
                   ` (11 more replies)
  0 siblings, 12 replies; 27+ messages in thread
From: Mikael Magnusson @ 2008-08-15 23:56 UTC (permalink / raw)
  To: zsh-workers

I have some other _git patches too, but they're sort of jumbled up and have
some XXXes, but if anyone is curious they can look here:
http://git.mika.l3ib.org/?p=zsh-cvs.git;a=history;f=Completion/Unix/Command/_git;h=mika

--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -2271,7 +2271,7 @@ _git-rev-parse () {
     '--git-dir[show "$GIT_DIR" if defined else show path to ".git"
directory]' \
     '--short=-[show only handful hexdigits prefix]:: :_guard
"[[\:digit\:]]#" number' \
     {--after=-,--since=-}'[show "--max-age=" parameter corresponding
given date string]:datestring' \
-    {--berore=-,--until=-}'[show "--min-age=" parameter corresponding
given date string]:datestring' \
+    {--before=-,--until=-}'[show "--min-age=" parameter corresponding
given date string]:datestring' \
     '*:objects:__git_objects' && ret=0
 }


-- 
Mikael Magnusson


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2008-08-19  1:42 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-10-18 21:23 Fix a typo in _git Mikael Magnusson
2008-08-15 23:56 Mikael Magnusson
2008-08-16  0:45 ` Clint Adams
2008-08-16 12:56 ` Clint Adams
2008-08-16 13:25 ` Clint Adams
2008-08-16 13:55 ` Clint Adams
2008-08-16 16:15 ` Clint Adams
2008-08-16 17:59 ` Clint Adams
2008-08-16 18:29 ` Clint Adams
2008-08-17 14:03 ` Clint Adams
2008-08-17 17:13 ` Clint Adams
2008-08-17 17:27   ` Mikael Magnusson
2008-08-18  1:46     ` Clint Adams
2008-08-18  9:47       ` Mikael Magnusson
2008-08-18 20:10         ` Mikael Magnusson
2008-08-18 22:45           ` Clint Adams
2008-08-19  0:09             ` Mikael Magnusson
2008-08-19  0:25               ` Clint Adams
2008-08-19  0:37                 ` Mikael Magnusson
2008-08-19  0:39                   ` Mikael Magnusson
2008-08-19  0:58                   ` Clint Adams
2008-08-19  1:05                   ` Clint Adams
2008-08-17 23:23 ` Mikael Magnusson
2008-08-17 23:30   ` Mikael Magnusson
2008-08-18  0:08     ` Phil Pennock
2008-08-19  1:08 ` Clint Adams
2008-08-19  1:41 ` Clint Adams

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).