aboutsummaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2016-09-26 16:09:16 -0700
committerJunio C Hamano <gitster@pobox.com>2016-09-26 16:09:16 -0700
commitb7af6ae5cff8439fdf5b72f926cab2e614906af3 (patch)
treebc9721ce62fa88e4c2824e04069380d40e09d2d9 /Documentation
parentb3e588a48af0ce15832c240887b9a3f9361d22bb (diff)
parent5b162879e93dab3b4bcd66afdbea3a96660abd7d (diff)
downloadgit-b7af6ae5cff8439fdf5b72f926cab2e614906af3.tar.gz
git-b7af6ae5cff8439fdf5b72f926cab2e614906af3.tar.xz
Merge branch 'mh/diff-indent-heuristic'
Output from "git diff" can be made easier to read by selecting which lines are common and which lines are added/deleted intelligently when the lines before and after the changed section are the same. A command line option is added to help with the experiment to find a good heuristics. * mh/diff-indent-heuristic: blame: honor the diff heuristic options and config parse-options: add parse_opt_unknown_cb() diff: improve positioning of add/delete blocks in diffs xdl_change_compact(): introduce the concept of a change group recs_match(): take two xrecord_t pointers as arguments is_blank_line(): take a single xrecord_t as argument xdl_change_compact(): only use heuristic if group can't be matched xdl_change_compact(): fix compaction heuristic to adjust ixo
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/diff-config.txt7
-rw-r--r--Documentation/diff-heuristic-options.txt7
-rw-r--r--Documentation/diff-options.txt7
-rw-r--r--Documentation/git-annotate.txt1
-rw-r--r--Documentation/git-blame.txt2
5 files changed, 15 insertions, 9 deletions
diff --git a/Documentation/diff-config.txt b/Documentation/diff-config.txt
index 0eded2403..b27a38f89 100644
--- a/Documentation/diff-config.txt
+++ b/Documentation/diff-config.txt
@@ -171,10 +171,11 @@ diff.tool::
include::mergetools-diff.txt[]
+diff.indentHeuristic::
diff.compactionHeuristic::
- Set this option to `true` to enable an experimental heuristic that
- shifts the hunk boundary in an attempt to make the resulting
- patch easier to read.
+ Set one of these options to `true` to enable one of two
+ experimental heuristics that shift diff hunk boundaries to
+ make patches easier to read.
diff.algorithm::
Choose a diff algorithm. The variants are as follows:
diff --git a/Documentation/diff-heuristic-options.txt b/Documentation/diff-heuristic-options.txt
new file mode 100644
index 000000000..36cb549df
--- /dev/null
+++ b/Documentation/diff-heuristic-options.txt
@@ -0,0 +1,7 @@
+--indent-heuristic::
+--no-indent-heuristic::
+--compaction-heuristic::
+--no-compaction-heuristic::
+ These are to help debugging and tuning experimental heuristics
+ (which are off by default) that shift diff hunk boundaries to
+ make patches easier to read.
diff --git a/Documentation/diff-options.txt b/Documentation/diff-options.txt
index 7805a0cca..2d77a1962 100644
--- a/Documentation/diff-options.txt
+++ b/Documentation/diff-options.txt
@@ -63,12 +63,7 @@ ifndef::git-format-patch[]
Synonym for `-p --raw`.
endif::git-format-patch[]
---compaction-heuristic::
---no-compaction-heuristic::
- These are to help debugging and tuning an experimental
- heuristic (which is off by default) that shifts the hunk
- boundary in an attempt to make the resulting patch easier
- to read.
+include::diff-heuristic-options.txt[]
--minimal::
Spend extra time to make sure the smallest possible
diff --git a/Documentation/git-annotate.txt b/Documentation/git-annotate.txt
index 05fd482b7..94be4b85e 100644
--- a/Documentation/git-annotate.txt
+++ b/Documentation/git-annotate.txt
@@ -23,6 +23,7 @@ familiar command name for people coming from other SCM systems.
OPTIONS
-------
include::blame-options.txt[]
+include::diff-heuristic-options.txt[]
SEE ALSO
--------
diff --git a/Documentation/git-blame.txt b/Documentation/git-blame.txt
index ba5417567..9dccb3319 100644
--- a/Documentation/git-blame.txt
+++ b/Documentation/git-blame.txt
@@ -89,6 +89,8 @@ include::blame-options.txt[]
abbreviated object name, use <n>+1 digits. Note that 1 column
is used for a caret to mark the boundary commit.
+include::diff-heuristic-options.txt[]
+
THE PORCELAIN FORMAT
--------------------