Re: Strange behaviour of git diff branch1 ... branch2

2012-11-12 Thread Junio C Hamano
Nguyen Thai Ngoc Duy pclo...@gmail.com writes:

 On Sat, Oct 27, 2012 at 7:33 PM, Junio C Hamano gits...@pobox.com wrote:

 Nguyen Thai Ngoc Duy pclo...@gmail.com wrote:

Notice the --cc in the first line, which is combined diff. Usually
combined-diff is between two points and one parent. Though somehow git
passes 4 parents down combined-diff.c:show_combined_header, as you can
see in the index line. I think we should fix rev parsing code as it
does not make sense to pass 4 identical parents this way.

 The two heads home from HEAD...HEAD the user has on the command line.

 The user is getting exactly what she asked; there is nothing to fix.

 Is there any use case where HEAD...HEAD (or ... alone) is actually useful?

That is an invalid question, implying a proposal that will introduce
more confusion to the users while hurting the code.

There is no use case where cat A A is actually useful, either,
but it does not mean cat A A should be special cased to do
something different from what it happens to do in line with the case
where cat A B does.  I think diff ... or diff HEAD...HEAD
are the same as that example.


--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Strange behaviour of git diff branch1 ... branch2

2012-10-27 Thread Nguyen Thai Ngoc Duy
On Sat, Oct 27, 2012 at 7:33 PM, Junio C Hamano gits...@pobox.com wrote:


 Nguyen Thai Ngoc Duy pclo...@gmail.com wrote:

Notice the --cc in the first line, which is combined diff. Usually
combined-diff is between two points and one parent. Though somehow git
passes 4 parents down combined-diff.c:show_combined_header, as you can
see in the index line. I think we should fix rev parsing code as it
does not make sense to pass 4 identical parents this way.

 The two heads home from HEAD...HEAD the user has on the command line.

 The user is getting exactly what she asked; there is nothing to fix.

Is there any use case where HEAD...HEAD (or ... alone) is actually useful?

I have re-read the git-diff man page and I don't think it explains
git diff foo ... bar syntax (from a user's point of view, not a git
guru's). We could improve the documentation if git diff foo ... bar
is useful, or reject it with an error to avoid confusion.
-- 
Duy
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Strange behaviour of git diff branch1 ... branch2

2012-10-26 Thread Nguyen Thai Ngoc Duy
On Sat, Oct 27, 2012 at 4:26 AM, Aaron Schrab aa...@schrab.com wrote:
 I came across this odd question on stackoverflow:
 http://stackoverflow.com/q/13092854/1507392


 If git diff is run with ... as a separate argument between two commit-ish
 arguments causes it to produce strange output.  The differences seem to be
 the same as if ... was left out, but change lines begin with 4 + or -
 characters rather than just 1.

 Can anybody explain what is happening here?  I don't have any reason to want
 to use that form myself, but I'm very curious about why it produces this odd
 output.

I'm curious too. It shows this to me

diff --cc .gitignore
index a188a82,a188a82,a188a82,a188a82..d4473d8
--- a/.gitignore
+++ b/.gitignore
@ -2,9 -2,9 -2,9 -2,9 +2,6 @
/GIT-CFLAGS
/GIT-LDFLAGS
/GIT-GUI-VARS
/GIT-PREFIX
/GIT-SCRIPT-DEFINES
/GIT-USER-AGENT
/GIT-VERSION-FILE
/bin-wrappers/
/git

Notice the --cc in the first line, which is combined diff. Usually
combined-diff is between two points and one parent. Though somehow git
passes 4 parents down combined-diff.c:show_combined_header, as you can
see in the index line. I think we should fix rev parsing code as it
does not make sense to pass 4 identical parents this way.
-- 
Duy
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html