<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/diff.h, branch v1.7.11</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://www.git.shady.money/git/atom?h=v1.7.11</id>
<link rel='self' href='https://www.git.shady.money/git/atom?h=v1.7.11'/>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/'/>
<updated>2012-05-02T20:51:59Z</updated>
<entry>
<title>Merge branch 'lp/diffstat-with-graph'</title>
<updated>2012-05-02T20:51:59Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-05-02T20:51:59Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=73ff8cf784b6ee447072fad6c06fd0eef0e9c9f6'/>
<id>urn:sha1:73ff8cf784b6ee447072fad6c06fd0eef0e9c9f6</id>
<content type='text'>
"log --graph" was not very friendly with "--stat" option and its output
had line breaks at wrong places.

By Lucian Poston (5) and Zbigniew Jędrzejewski-Szmek (2)
* lp/diffstat-with-graph:
  t4052: work around shells unable to set COLUMNS to 1
  Prevent graph_width of stat width from falling below min
  t4052: Test diff-stat output with minimum columns
  t4052: Adjust --graph --stat output for prefixes
  Adjust stat width calculations to take --graph output into account
  Add output_prefix_length to diff_options
  t4052: test --stat output with --graph
</content>
</entry>
<entry>
<title>Merge branch 'jk/diff-no-rename-empty'</title>
<updated>2012-04-16T19:41:49Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-04-16T19:41:49Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=c0599f6993413360d8e35679a6b421d4eb16a698'/>
<id>urn:sha1:c0599f6993413360d8e35679a6b421d4eb16a698</id>
<content type='text'>
Forbids rename detection logic from matching two empty files as renames
during merge-recursive to prevent mismerges.

By Jeff King
* jk/diff-no-rename-empty:
  merge-recursive: don't detect renames of empty files
  teach diffcore-rename to optionally ignore empty content
  make is_empty_blob_sha1 available everywhere
  drop casts from users EMPTY_TREE_SHA1_BIN
</content>
</entry>
<entry>
<title>Add output_prefix_length to diff_options</title>
<updated>2012-04-16T18:28:30Z</updated>
<author>
<name>Lucian Poston</name>
<email>lucian.poston@gmail.com</email>
</author>
<published>2012-04-16T10:44:50Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=5e71a84a2da8f5dd32c13392854eab4d448c8085'/>
<id>urn:sha1:5e71a84a2da8f5dd32c13392854eab4d448c8085</id>
<content type='text'>
Add output_prefix_length to diff_options. Initialize the value to 0 and only
set it when graph.c:diff_output_prefix_callback() is called.

Signed-off-by: Lucian Poston &lt;lucian.poston@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jc/diff-algo-cleanup'</title>
<updated>2012-04-16T05:51:15Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-04-16T05:51:14Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=86c340e08287c0faad8871207787e5819f22a7d5'/>
<id>urn:sha1:86c340e08287c0faad8871207787e5819f22a7d5</id>
<content type='text'>
Resurrects the preparatory clean-up patches from another topic that was
discarded, as this would give a saner foundation to build on diff.algo
configuration option series.

* jc/diff-algo-cleanup:
  xdiff: PATIENCE/HISTOGRAM are not independent option bits
  xdiff: remove XDL_PATCH_* macros
</content>
</entry>
<entry>
<title>teach diffcore-rename to optionally ignore empty content</title>
<updated>2012-03-23T20:52:49Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2012-03-22T22:52:13Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=90d43b07687fdc51d1f2fc14948df538dc45584b'/>
<id>urn:sha1:90d43b07687fdc51d1f2fc14948df538dc45584b</id>
<content type='text'>
Our rename detection is a heuristic, matching pairs of
removed and added files with similar or identical content.
It's unlikely to be wrong when there is actual content to
compare, and we already take care not to do inexact rename
detection when there is not enough content to produce good
results.

However, we always do exact rename detection, even when the
blob is tiny or empty. It's easy to get false positives with
an empty blob, simply because it is an obvious content to
use as a boilerplate (e.g., when telling git that an empty
directory is worth tracking via an empty .gitignore).

This patch lets callers specify whether or not they are
interested in using empty files as rename sources and
destinations. The default is "yes", keeping the original
behavior. It works by detecting the empty-blob sha1 for
rename sources and destinations.

One more flexible alternative would be to allow the caller
to specify a minimum size for a blob to be "interesting" for
rename detection. But that would catch small boilerplate
files, not large ones (e.g., if you had the GPL COPYING file
in many directories).

A better alternative would be to allow a "-rename"
gitattribute to allow boilerplate files to be marked as
such. I'll leave the complexity of that solution until such
time as somebody actually wants it. The complaints we've
seen so far revolve around empty files, so let's start with
the simple thing.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jc/pickaxe-ignore-case'</title>
<updated>2012-03-07T20:12:59Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-03-07T20:12:59Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=1e4d0875acbce3c881bc1de66c8900cdc240ebe8'/>
<id>urn:sha1:1e4d0875acbce3c881bc1de66c8900cdc240ebe8</id>
<content type='text'>
By Junio C Hamano (2) and Ramsay Jones (1)
* jc/pickaxe-ignore-case:
  ctype.c: Fix a sparse warning
  pickaxe: allow -i to search in patch case-insensitively
  grep: use static trans-case table
</content>
</entry>
<entry>
<title>Merge branch 'zj/diff-stat-dyncol'</title>
<updated>2012-03-06T22:53:06Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-03-06T22:53:06Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=af050219e44051426179248614a046896b5d40c0'/>
<id>urn:sha1:af050219e44051426179248614a046896b5d40c0</id>
<content type='text'>
By Zbigniew Jędrzejewski-Szmek (8) and Junio C Hamano (1)
* zj/diff-stat-dyncol:
  : This breaks tests. Perhaps it is not worth using the decimal-width stuff
  : for this series, at least initially.
  diff --stat: add config option to limit graph width
  diff --stat: enable limiting of the graph part
  diff --stat: add a test for output with COLUMNS=40
  diff --stat: use a maximum of 5/8 for the filename part
  merge --stat: use the full terminal width
  log --stat: use the full terminal width
  show --stat: use the full terminal width
  diff --stat: use the full terminal width
  diff --stat: tests for long filenames and big change counts
</content>
</entry>
<entry>
<title>diff --stat: enable limiting of the graph part</title>
<updated>2012-03-01T17:15:47Z</updated>
<author>
<name>Zbigniew Jędrzejewski-Szmek</name>
<email>zbyszek@in.waw.pl</email>
</author>
<published>2012-03-01T12:26:45Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=969fe57b844a514747c1d5d66e0698dc53ed473d'/>
<id>urn:sha1:969fe57b844a514747c1d5d66e0698dc53ed473d</id>
<content type='text'>
A new option --stat-graph-width=&lt;width&gt; can be used to limit the width
of the graph part even is more space is available. Up to &lt;width&gt;
columns will be used for the graph.

If commits changing a lot of lines are displayed in a wide terminal
window (200 or more columns), and the +- graph uses the full width,
the output can be hard to comfortably scan with a horizontal movement
of human eyes. Messages wrapped to about 80 columns would be
interspersed with very long +- lines. It makes sense to limit the
width of the graph part to a fixed value (e.g. 70 columns), even if
more columns are available.

Signed-off-by: Zbigniew Jędrzejewski-Szmek &lt;zbyszek@in.waw.pl&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>pickaxe: allow -i to search in patch case-insensitively</title>
<updated>2012-02-29T00:15:29Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-02-21T09:02:46Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=accccde483c3cfd55ef55037e8802ca0baaee5a1'/>
<id>urn:sha1:accccde483c3cfd55ef55037e8802ca0baaee5a1</id>
<content type='text'>
"git log -S&lt;string&gt;" is a useful way to find the last commit in the
codebase that touched the &lt;string&gt;. As it was designed to be used by a
porcelain script to dig the history starting from a block of text that
appear in the starting commit, it never had to look for anything but an
exact match.

When used by an end user who wants to look for the last commit that
removed a string (e.g. name of a variable) that he vaguely remembers,
however, it is useful to support case insensitive match.

When given the "--regexp-ignore-case" (or "-i") option, which originally
was designed to affect case sensitivity of the search done in the commit
log part, e.g. "log --grep", the matches made with -S/-G pickaxe search is
done case insensitively now.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>xdiff: PATIENCE/HISTOGRAM are not independent option bits</title>
<updated>2012-02-19T23:36:55Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2012-02-19T23:36:55Z</published>
<link rel='alternate' type='text/html' href='https://www.git.shady.money/git/commit/?id=307ab20b333d9b4c818b1ff912e86944d1a3fdc1'/>
<id>urn:sha1:307ab20b333d9b4c818b1ff912e86944d1a3fdc1</id>
<content type='text'>
Because the default Myers, patience and histogram algorithms cannot be in
effect at the same time, XDL_PATIENCE_DIFF and XDL_HISTOGRAM_DIFF are not
independent bits.  Instead of wasting one bit per algorithm, define a few
macros to access the few bits they occupy and update the code that access
them.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
