<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/tests/diff/workdir.c, branch cmn/oidarray</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/'/>
<entry>
<title>Fix compile error on Visual Studio</title>
<updated>2014-05-27T14:36:07+00:00</updated>
<author>
<name>Cha, Hojeong</name>
<email>ikadro@gmail.com</email>
</author>
<published>2014-05-27T14:32:38+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=3ac1ff42d7cfa8ac981a37712863419c071f2640'/>
<id>3ac1ff42d7cfa8ac981a37712863419c071f2640</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Git binary check compat tests</title>
<updated>2014-05-16T23:30:58+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-05-16T23:30:58+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=8af4966db15ed35832235627e2d01068d4734dea'/>
<id>8af4966db15ed35832235627e2d01068d4734dea</id>
<content type='text'>
A variety of data patterns for diffs verified to match the
behavior of binary detection with Git on the command line.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A variety of data patterns for diffs verified to match the
behavior of binary detection with Git on the command line.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove trace / add git_diff_perfdata struct + api</title>
<updated>2014-05-02T16:21:33+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-29T22:05:58+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=9c8ed4999740e921ecc2966bbcd0dbcfc725f59a'/>
<id>9c8ed4999740e921ecc2966bbcd0dbcfc725f59a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add payloads, bitmaps to trace API</title>
<updated>2014-05-02T16:21:33+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-29T18:29:49+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=b23b112dfe8eceb39eaaea2d5e60d971c4371aa0'/>
<id>b23b112dfe8eceb39eaaea2d5e60d971c4371aa0</id>
<content type='text'>
This is a proposed adjustment to the trace APIs.  This makes the
trace levels into a bitmask so that they can be selectively enabled
and adds a callback-level payload, plus a message-level payload.

This makes it easier for me to a GIT_TRACE_PERF callbacks that
are simply bypassed if the PERF level is not set.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a proposed adjustment to the trace APIs.  This makes the
trace levels into a bitmask so that they can be selectively enabled
and adds a callback-level payload, plus a message-level payload.

This makes it easier for me to a GIT_TRACE_PERF callbacks that
are simply bypassed if the PERF level is not set.
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't use trace if GIT_TRACE not defined</title>
<updated>2014-05-02T16:21:33+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-28T23:47:39+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=225aab5d6a611076b22f00ae5a28184d92b5259c'/>
<id>225aab5d6a611076b22f00ae5a28184d92b5259c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add GIT_STATUS_OPT_UPDATE_INDEX and use trace API</title>
<updated>2014-05-02T16:21:33+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-28T23:39:53+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=cd424ad5518c7cfbba10a764d7bc097377ec3995'/>
<id>cd424ad5518c7cfbba10a764d7bc097377ec3995</id>
<content type='text'>
This adds an option to refresh the stat cache while generating
status.  It also rips out the GIT_PERF stuff I had an makes use
of the trace API to keep statistics about what happens during diff.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds an option to refresh the stat cache while generating
status.  It also rips out the GIT_PERF stuff I had an makes use
of the trace API to keep statistics about what happens during diff.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add diff option to update index stat cache</title>
<updated>2014-05-02T16:21:33+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-28T21:48:41+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=94fb4aadc80c927a59696dc01db03f3a0629dae7'/>
<id>94fb4aadc80c927a59696dc01db03f3a0629dae7</id>
<content type='text'>
When diff is scanning the working directory, if it finds a file
where it is not sure if the index entry matches the working dir,
it will recalculate the OID (which is pretty expensive).  This
adds a new flag to diff so that if the OID calculation finds that
the file actually has not changed (i.e. just the modified time was
altered or such), then it will refresh the stat cache in the index
so that future calls to diff will not have to check the oid again.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When diff is scanning the working directory, if it finds a file
where it is not sure if the index entry matches the working dir,
it will recalculate the OID (which is pretty expensive).  This
adds a new flag to diff so that if the OID calculation finds that
the file actually has not changed (i.e. just the modified time was
altered or such), then it will refresh the stat cache in the index
so that future calls to diff will not have to check the oid again.
</pre>
</div>
</content>
</entry>
<entry>
<title>Skip diff oid calc when size definitely changed</title>
<updated>2014-05-02T16:21:32+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-28T21:16:26+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=8ef4e11a76599111b98682d235e7a4df921b2597'/>
<id>8ef4e11a76599111b98682d235e7a4df921b2597</id>
<content type='text'>
When we think the stat cache in the index seems valid and the size
or mode of a file has definitely changed, then don't bother trying
to recalculate the OID of the workdir bits to confirm that it is
modified - just accept that it is modified.

This can result in files that show as modified with no actual diff,
but the behavior actually appears to match Git on the command line.

This also includes a minor optimization to not perform a submodule
lookup on the ".git" directory itself.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When we think the stat cache in the index seems valid and the size
or mode of a file has definitely changed, then don't bother trying
to recalculate the OID of the workdir bits to confirm that it is
modified - just accept that it is modified.

This can result in files that show as modified with no actual diff,
but the behavior actually appears to match Git on the command line.

This also includes a minor optimization to not perform a submodule
lookup on the ".git" directory itself.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add build option for diff internal statistics</title>
<updated>2014-05-02T16:21:32+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-04-28T21:04:29+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=240f4af321612a0fe4cf01aed75a8cb44173feb8'/>
<id>240f4af321612a0fe4cf01aed75a8cb44173feb8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update behavior for untracked sub-repos</title>
<updated>2014-03-25T19:37:05+00:00</updated>
<author>
<name>Russell Belfer</name>
<email>rb@github.com</email>
</author>
<published>2014-03-25T19:37:05+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=d3bc95fd664095a0c8dfcdf99f62741b1ecd6ffc'/>
<id>d3bc95fd664095a0c8dfcdf99f62741b1ecd6ffc</id>
<content type='text'>
When a directory containing a .git directory (or even just a plain
gitlink) was found, libgit2 was going out of its way to treat it
specially.  This seemed like it was necessary because the diff
code was not originally emulating Git's behavior for untracked
directories correctly (i.e. scanning for ignored vs untracked items
inside).  Now that libgit2 diff mimics Git's untracked directory
behavior, the special handling for contained Git repos is actually
incorrect and this commit rips it out.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When a directory containing a .git directory (or even just a plain
gitlink) was found, libgit2 was going out of its way to treat it
specially.  This seemed like it was necessary because the diff
code was not originally emulating Git's behavior for untracked
directories correctly (i.e. scanning for ignored vs untracked items
inside).  Now that libgit2 diff mimics Git's untracked directory
behavior, the special handling for contained Git repos is actually
incorrect and this commit rips it out.
</pre>
</div>
</content>
</entry>
</feed>
