git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Difference in how "git status" and "git diff --name-only" lists filenames

From
GHGustaf Hendeby <hendeby@gmail.com>
Date
Dec 6, 2007, 16:36 UTC
Message-ID
<bf7b2dda0712060836j530277d5x28fcb50a717f17e5@mail.gmail.com>
In-Reply-To
<7vodd9x7fu.fsf@gitster.siamese.dyndns.org>
On Dec 2, 2007 7:44 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 38 quoted lines
> "Gustaf Hendeby" <hendeby@gmail.com> writes:
> > A while ago 'git status' was patched to report relative pathnames.  (I
> > like that change it makes cut'n'paste easier.)  However, 'git diff
> > --name-only' and 'git diff --name-status' (other commands as well),
> > which gives in a sense similar output has not been changed the same
> > way.  Is this intentionally, or just because no one has stepped up and
> > provided a patch?  If the difference is to stay, maybe this should be
> > reflected in the help texts to avoid any confusion.
>
> The commands output from diff always talks about paths relative to the
> tree root, and scripts rely on it.  The recent change made exceptions to
> the status command.  I agree an additional documentation to git-status
> would be beneficial.
>
> Having said that, a switch --relative-name might be an option.  It could
> be argued that doing it the other way around (like --full-name option to
> ls-files does), defaulting to relative to cwd, would have been a getter
> approach if we were doing git from scratch, though.  We may still want
> to do so in the longer run, but that would be a huge interface change
> that would impact a lot of peoples' scripts.
>
>
> diff --git a/Documentation/git-status.txt b/Documentation/git-status.txt
> index 8fd0fc6..b0cb6bc 100644
> --- a/Documentation/git-status.txt
> +++ b/Documentation/git-status.txt
> @@ -40,6 +40,10 @@ OUTPUT
>  The output from this command is designed to be used as a commit
>  template comments, and all the output lines are prefixed with '#'.
>
> +The paths mentioned in the output, unlike many other git commands, are
> +made relative to the current directory, if you are working in a
> +subdirectory (this is on purpose, to help cutting and pasting).
> +
>
>  CONFIGURATION
>  -------------
>

Thank you for your timely answer and the good explanation. Sorry for my late response! I think that the addition to the documentation that you suggest sounds good, and would be useful. Do you want me to do anything else about this?

/Gustaf
Previous: Junio C Hamano
Message 3 of 3 in “Difference in how "git status" and "git diff --name-only" lists filenames”
  1. Gustaf HendebyDec 2, 2007
  2. Junio C HamanoDec 2, 2007
  3. Gustaf HendebyDec 6, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.