mirror of
https://github.com/git/git
synced 2024-08-25 10:45:59 +00:00
![Junio C Hamano](/assets/img/avatar_default.png)
After thinking about it more, I realized that much of the change I did on top of Linus' version does not make much sense. This commit reverts it so that it by default shows diffs with stage0 paths or stage2 paths with working tree; the unmerged stage to use can be overridden with -1/-2/-3 option (-2 is the default so essentially is a no-op). When the index file is unmerged, we are by definition in the middle of a conflicting merge, and we should show the diff with stage 2 by default. More importantly, paths without conflicts are updated in the working tree and collapsed to stage0 in the index, so showing diff with stage0 at the same time does not hurt. In normal cases, stage0 entries should be in sync with the working tree files and does not clutter the output. It even helps the user to realize that the working tree has local changes unrelated to the merge and remember to be careful not to do a "git-commit -a" after resolving the conflicts. When there is no unmerged entries, giving diff_unmerged_stage a default value of 2 does not cause any harm, because it would not be used anyway. So in all, always showing diff between stage0 paths and unmerged entries from a stage (defaulting to 2) is the right thing to do, as Linus originally did. Signed-off-by: Junio C Hamano <junkio@cox.net>
53 lines
1.2 KiB
Plaintext
53 lines
1.2 KiB
Plaintext
git-diff-files(1)
|
|
=================
|
|
|
|
NAME
|
|
----
|
|
git-diff-files - Compares files in the working tree and the index
|
|
|
|
|
|
SYNOPSIS
|
|
--------
|
|
'git-diff-files' [-q] [<common diff options>] [<path>...]
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
Compares the files in the working tree and the index. When paths
|
|
are specified, compares only those named paths. Otherwise all
|
|
entries in the index are compared. The output format is the
|
|
same as "git-diff-index" and "git-diff-tree".
|
|
|
|
OPTIONS
|
|
-------
|
|
include::diff-options.txt[]
|
|
|
|
-1 -2 -3 or --base --ours --theirs, and -0::
|
|
Diff against the "base" version, "our branch" or "their
|
|
branch" respectively. With these options, diffs for
|
|
merged entries are not shown.
|
|
+
|
|
The default is to diff against our branch (-2) and the
|
|
cleanly resolved paths. The option -0 can be given to
|
|
omit diff output for unmerged entries and just show "Unmerged".
|
|
|
|
-q::
|
|
Remain silent even on nonexisting files
|
|
|
|
Output format
|
|
-------------
|
|
include::diff-format.txt[]
|
|
|
|
|
|
Author
|
|
------
|
|
Written by Linus Torvalds <torvalds@osdl.org>
|
|
|
|
Documentation
|
|
--------------
|
|
Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>.
|
|
|
|
GIT
|
|
---
|
|
Part of the gitlink:git[7] suite
|
|
|