<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/git.git/diff.c, branch v1.0rc1</title>
<subtitle>Git
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v1.0rc1</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v1.0rc1'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/'/>
<updated>2005-10-23T05:49:51Z</updated>
<entry>
<title>Split up tree diff functions into tree-diff.c library</title>
<updated>2005-10-23T05:49:51Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@osdl.org</email>
</author>
<published>2005-10-21T04:05:05Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=ac1b3d1248f36b26c2eab55022b9a54bde36b1ee'/>
<id>urn:sha1:ac1b3d1248f36b26c2eab55022b9a54bde36b1ee</id>
<content type='text'>
This makes the tree diff functionality independent of the "git-diff-tree"
program, by splitting the core functionality up into a library file.

This will be needed for when we teach git-rev-list to only follow a
specified set of pathnames, rather than the global revision history.

Most of it is a fairly straightforward code move, but it also involves
some calling convention cleanup, and moving some of the static variables
from diff-tree.c into the options structure.

The actual tree change callback routines also become paramterized by the
diff_options structure, allowing the library functionality to do something
else than just show the diff on stdout.

Right now the only user of this functionality remains git-diff-tree
itself.

Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Handle "-" at beginning of filenames, part 3</title>
<updated>2005-10-18T07:16:45Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@osdl.org</email>
</author>
<published>2005-10-18T07:16:45Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=694a764fc2af9463c2462ab1fc92b442fce1a54c'/>
<id>urn:sha1:694a764fc2af9463c2462ab1fc92b442fce1a54c</id>
<content type='text'>
This fixes the default built-in exec() of "diff" to add a "--" before the
filenames, so that if a filename starts with a "-", the diff program won't
think it's an option.

Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Update git-diff-* to use C-style quoting for funny pathnames.</title>
<updated>2005-10-18T00:41:56Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-10-15T04:56:46Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=cf9dfc669e9bae724286d919dec0cd30e3f592e4'/>
<id>urn:sha1:cf9dfc669e9bae724286d919dec0cd30e3f592e4</id>
<content type='text'>
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Show original and resulting blob object info in diff output.</title>
<updated>2005-10-07T10:42:00Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-10-07T10:42:00Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=ec1fcc16af94810dd822c6da533f58fa2750f14a'/>
<id>urn:sha1:ec1fcc16af94810dd822c6da533f58fa2750f14a</id>
<content type='text'>
This adds more cruft to diff --git header to record the blob SHA1 and
the mode the patch/diff is intended to be applied against, to help the
receiving end fall back on a three-way merge.  The new header looks
like this:

    diff --git a/apply.c b/apply.c
    index 7be5041..8366082 100644
    --- a/apply.c
    +++ b/apply.c
    @@ -14,6 +14,7 @@
     //    files that are being modified, but doesn't apply the patch
     //  --stat does just a diffstat, and doesn't actually apply
    +//  --show-index-info shows the old and new index info for...
    ...

Upon receiving such a patch, if the patch did not apply cleanly to the
target tree, the recipient can try to find the matching old objects in
her object database and create a temporary tree, apply the patch to
that temporary tree, and attempt a 3-way merge between the patched
temporary tree and the target tree using the original temporary tree
as the common ancestor.

The patch lifts the code to compute the hash for an on-filesystem
object from update-index.c and makes it available to the diff output
routine.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Consolidate null_sha1[].</title>
<updated>2005-10-01T05:12:01Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junio@twinsun.com</email>
</author>
<published>2005-09-30T21:02:47Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=88cd621deedd2aab8f0a4c6ea3afed7269e66d0c'/>
<id>urn:sha1:88cd621deedd2aab8f0a4c6ea3afed7269e66d0c</id>
<content type='text'>
Signed-off-by: Junio C Hamano &lt;junio@twinsun.com&gt;
</content>
</entry>
<entry>
<title>Diff: --name-status output format.</title>
<updated>2005-09-25T06:50:44Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-09-21T07:20:06Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=946f5f7c245a0f9398417be5946795cfebfd1c62'/>
<id>urn:sha1:946f5f7c245a0f9398417be5946795cfebfd1c62</id>
<content type='text'>
The new output format shows only the status letter and paths.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Diff: -l&lt;num&gt; to limit rename/copy detection.</title>
<updated>2005-09-25T06:50:44Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-09-21T07:18:27Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=8082d8d3050e3fdd7b0f13c7a7b3ad68af7f478a'/>
<id>urn:sha1:8082d8d3050e3fdd7b0f13c7a7b3ad68af7f478a</id>
<content type='text'>
When many paths are modified, rename detection takes a lot of time.
The new option -l&lt;num&gt; can be used to disable rename detection when
more than &lt;num&gt; paths are possibly created as renames.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Diff clean-up.</title>
<updated>2005-09-25T06:50:43Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-09-21T07:00:47Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=6b5ee137e56af8093391411389dd4b18416707ec'/>
<id>urn:sha1:6b5ee137e56af8093391411389dd4b18416707ec</id>
<content type='text'>
This is a long overdue clean-up to the code for parsing and passing
diff options.  It also tightens some constness issues.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Retire diff-helper.</title>
<updated>2005-09-22T08:54:13Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-09-21T06:24:39Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=5cfcd07c931e6029a77f9393309f7d0ec7cdc118'/>
<id>urn:sha1:5cfcd07c931e6029a77f9393309f7d0ec7cdc118</id>
<content type='text'>
The textual diff generation with built-in '-p' in diff-* brothers has
proven to be useful enough that git-diff-helper outlived its usefulness.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Plug diff leaks.</title>
<updated>2005-09-15T23:13:43Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-09-15T23:13:43Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=5098bafb756de69d03882707a3382899c0cb7dd1'/>
<id>urn:sha1:5098bafb756de69d03882707a3382899c0cb7dd1</id>
<content type='text'>
It is a bit embarrassing that it took this long for a fix since the
problem was first reported on Aug 13th.

    Message-ID: &lt;87y876gl1r.wl@mail2.atmark-techno.com&gt;
    From: Yasushi SHOJI &lt;yashi@atmark-techno.com&gt;
    Newsgroups: gmane.comp.version-control.git
    Subject: [patch] possible memory leak in diff.c::diff_free_filepair()
    Date: Sat, 13 Aug 2005 19:58:56 +0900

This time I used valgrind to make sure that it does not overeagerly
discard memory that is still being used.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
</feed>
