All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Grimm <koreth@midwinter.com>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: "Jean-François Veillette" <jean_francois_veillette@yahoo.ca>,
	"Matthieu Moy" <Matthieu.Moy@imag.fr>,
	"Junio C Hamano" <gitster@pobox.com>,
	git@vger.kernel.org
Subject: Re: git-diff on touched files: bug or feature?
Date: Thu, 02 Aug 2007 23:10:44 +0800	[thread overview]
Message-ID: <46B1F3F4.5030504@midwinter.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0708021541520.14781@racer.site>

Johannes Schindelin wrote:
> This use case has not much to do with new users.  A new user _has_ to know 
> that updating all files, even if their content does not change, is not 
> right.
>   

Someone who has used, say, Subversion might have a perfectly reasonable 
expectation that "git diff" will show differences in content, and when 
there are no differences in content, will not mention a file at all. 
Other version control systems have "diff" commands that ignore touched 
files.

I admit I also thought the empty diffs were a bug (albeit a minor one 
not worth making noise about) until this thread. Now I understand why it 
happens, though I still think we'd be better off just not displaying the 
filename in git-diff until we know there's an actual diff to display.

I certainly don't think the "it's a feature: it reminds you when you've 
edited a file without changing it" argument holds any water at all. If 
that were truly the intent, if we truly considered that to be useful 
information a developer would want to get at after the fact, then why 
would git-status throw away that information? If I check to see what 
files I've modified/added (for which I run git-status) why does that 
automatically imply I am no longer interested in being reminded that I 
have saved a file without making changes, especially given that such 
files *don't* show up in the git-status output? git-status is silently 
losing information here; it gives you no indication that it has 
refreshed the index for those touched-but-not-edited files.

Now, I happen to think throwing away that information is just fine, 
because I don't think I have ever once cared to know that I touched a 
file but didn't change it. But fundamentally it's either a piece of 
information we care about (in which case we shouldn't go silently 
discarding it) or not (in which case it is just clutter in git-diff).

In the meantime, though, it's trivial enough to put a wrapper around 
git-diff to filter out the diffless files. I haven't cared enough to 
bother, but if I did it'd be just a few lines of Perl, no big deal.

-Steve

  reply	other threads:[~2007-08-02 15:10 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-01 16:17 git-diff on touched files: bug or feature? Matthieu Moy
2007-08-01 17:26 ` Junio C Hamano
2007-08-01 19:02   ` Alexandre Julliard
2007-08-01 19:07     ` Junio C Hamano
2007-08-01 19:17       ` Alexandre Julliard
2007-08-02  9:23   ` Matthieu Moy
2007-08-02  9:51     ` Johannes Schindelin
2007-08-02  9:57       ` Matthieu Moy
2007-08-02 10:48         ` Johannes Schindelin
2007-08-02 14:04           ` Jean-François Veillette
2007-08-02 14:43             ` Johannes Schindelin
2007-08-02 15:10               ` Steven Grimm [this message]
2007-08-02 15:23                 ` Johannes Schindelin
2007-08-02 15:45                   ` Matthieu Moy
2007-08-02 17:58                     ` J. Bruce Fields
2007-08-03  5:37                   ` [PATCH] Add --show-touched option to show "diff --git" line when contents are unchanged Steven Grimm
2007-08-03  6:30                     ` Junio C Hamano
2007-08-03 10:23                       ` Johannes Schindelin
2007-08-03 20:33                         ` Junio C Hamano
2007-08-03 21:32                           ` Matthieu Moy
2007-08-03 21:50                             ` Junio C Hamano
2007-08-03 23:01                               ` Matthieu Moy
2007-08-03 23:36                                 ` Junio C Hamano
2007-08-05 19:42                                   ` Matthieu Moy
2007-08-05 19:45                                     ` Johannes Schindelin
2007-08-05 19:57                                       ` Matthieu Moy
2007-08-06 15:56                           ` Matthias Lederhofer
2007-08-06 16:10                           ` David Kastrup
2007-08-06 16:16                             ` David Kastrup
2007-08-06 20:05                             ` Matthieu Moy
2007-08-06 20:34                               ` Junio C Hamano
2007-08-07  6:32                                 ` David Kastrup
2007-08-07 13:34                                   ` J. Bruce Fields
2007-08-07  4:22                     ` Linus Torvalds
2007-08-07  4:37                       ` Junio C Hamano
2007-08-07  6:41                         ` David Kastrup
2007-08-08  3:07                         ` Linus Torvalds
2007-08-08  3:44                           ` Junio C Hamano
2007-08-08  8:26                           ` Johannes Schindelin
2007-08-08  8:43                             ` Junio C Hamano
2007-08-08  9:13                               ` David Kastrup
2007-08-08  9:23                               ` Johannes Schindelin
2007-08-08  9:58                                 ` Jakub Narebski
2007-08-07  5:56                       ` Steven Grimm
2007-08-07  5:57                         ` [PATCH] Add a note about the index being updated by git-status in some cases Steven Grimm
2007-08-07  6:35                         ` [PATCH] git-diff: Output a warning about stale files in the index Steven Grimm
2007-08-07  6:46                           ` Junio C Hamano
2007-08-07  7:17                             ` [PATCH v2] " Steven Grimm
2007-08-07  7:46                               ` Junio C Hamano
2007-08-07  7:51                                 ` Steven Grimm
2007-08-07  9:04                                 ` Jakub Narebski
2007-08-11 20:07                               ` Junio C Hamano
2007-08-08  3:42                         ` [PATCH] Add --show-touched option to show "diff --git" line when contents are unchanged Linus Torvalds
2007-08-07  6:39                       ` Steven Grimm
2007-08-07  6:47                       ` Matthieu Moy
2007-08-02 20:50             ` git-diff on touched files: bug or feature? Junio C Hamano
2007-08-02  9:54     ` Junio C Hamano
2007-08-02 10:01       ` Junio C Hamano
2007-08-02 12:08         ` Matthieu Moy
2007-08-02 12:21           ` Johannes Schindelin
2007-08-02 19:56           ` Junio C Hamano
2007-08-03  7:04             ` Jeff King
2007-08-03  7:59               ` Junio C Hamano
2007-08-03  8:24                 ` Jeff King
2007-08-03  8:57                   ` Junio C Hamano
2007-08-03  8:40                 ` Shawn O. Pearce
2007-08-03  9:13                   ` Junio C Hamano
2007-08-02 12:05       ` Matthieu Moy
2007-08-02 12:19         ` Johannes Schindelin
2007-08-02 12:26           ` Matthieu Moy
2007-08-02 14:39             ` Johannes Schindelin
2007-08-02 14:49               ` Matthieu Moy
2007-08-02 15:12                 ` Johannes Schindelin
2007-08-02 13:25           ` Joel Reed
2007-08-02 15:05             ` Johannes Schindelin

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=46B1F3F4.5030504@midwinter.com \
    --to=koreth@midwinter.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=Matthieu.Moy@imag.fr \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jean_francois_veillette@yahoo.ca \
    /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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.