zsh-workers
 help / color / mirror / code / Atom feed
From: "Štěpán Němec" <stepnem@gmail.com>
To: "Alexey I. Froloff" <raorn@altlinux.org>
Cc: Zsh list <zsh-workers@zsh.org>
Subject: Re: [PATCH] _git: offer changed files relative to current directory
Date: Sat, 5 Dec 2009 13:07:54 +0100	[thread overview]
Message-ID: <20091205120753.GA21684@headley> (raw)
In-Reply-To: <1259973163-20919-1-git-send-email-raorn@altlinux.org>

On Sat, Dec 05, 2009 at 03:32:43AM +0300, Alexey I. Froloff wrote:
> __git_changed_files() behavior should match git-commit, pass --relative
> to git-diff-index then looking for changed files.
> 
> Signed-off-by: Alexey I. Froloff <raorn@altlinux.org>
> ---
>  Completion/Unix/Command/_git |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
> index e483133..dd3617b 100644
> --- a/Completion/Unix/Command/_git
> +++ b/Completion/Unix/Command/_git
> @@ -2826,7 +2826,7 @@ __git_unmerged_files () {
>  __git_changed_files () {
>    local -a files
>  
> -  files=(${(ps:\0:)"$(_call_program files git diff-index -z --name-only --no-color HEAD 2>/dev/null)"})
> +  files=(${(ps:\0:)"$(_call_program files git diff-index -z --name-only --no-color --relative HEAD 2>/dev/null)"})
>    __git_command_successful || return
>  
>    _wanted files expl 'index file' _multi_parts $@ - / files
> -- 
> 1.6.5.3
> 
No, this is wrong as far as I recall.
I was solving the same problem before some time. Your solution (i.e.
git-diff-index --relative) only displays the changed files under a
subdirectory, which is incorrect when not in the repository root.

I solved the problem by writing a 50 line or so "ueberfunction" which
manually relativizes the paths returned by git-diff-index to the correct
form required by git-commit (i.e. relative to the current directory, no
matter what it is -- and still displaying all the changed files not only
under the current directory, but from the whole repository).  Seems to
work, but I don't really feel very "proud" of it so I haven't tried to
share it so far.

    Štěpán


  reply	other threads:[~2009-12-05 12:12 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-05  0:32 Alexey I. Froloff
2009-12-05 12:07 ` Štěpán Němec [this message]
2009-12-05 12:42   ` Alexey I. Froloff
2009-12-05 15:12     ` Alexey I. Froloff
2009-12-05 17:00       ` Štěpán Němec
2009-12-05 17:45         ` Alexey I. Froloff
2009-12-06 21:52           ` [PATCH] _git: offer " Alexey I. Froloff
2009-12-07 22:40             ` Alexey I. Froloff
2009-12-08 10:48               ` Štěpán Němec
2009-12-08 10:50                 ` Nikolai Weibull
2009-12-08 11:37                   ` Štěpán Němec
2009-12-08 11:45                     ` Mikael Magnusson
2009-12-08 11:22                 ` Alexey I. Froloff
2009-12-08 11:39                   ` Štěpán Němec
2009-12-08 12:07                     ` Alexey I. Froloff
2009-12-13  0:08             ` Alexey I. Froloff
2009-12-13 21:33               ` Peter Stephenson
2009-12-13 22:16                 ` Nikolai Weibull
2009-12-13 22:22                 ` Štěpán Němec
2009-12-14 13:20                 ` Jörg Sommer
2009-12-08 12:08         ` [PATCH] _git: offer changed " Alexey I. Froloff
2009-12-08 13:20           ` Štěpán Němec
2009-12-08 13:30             ` Alexey I. Froloff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091205120753.GA21684@headley \
    --to=stepnem@gmail.com \
    --cc=raorn@altlinux.org \
    --cc=zsh-workers@zsh.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).