<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/diff-index.c, branch gitk-resize-error</title>
<subtitle>Fork of git SCM with my patches.</subtitle>
<id>http://git.kilabit.info/git/atom?h=gitk-resize-error</id>
<link rel='self' href='http://git.kilabit.info/git/atom?h=gitk-resize-error'/>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/'/>
<updated>2006-05-23T20:11:13Z</updated>
<entry>
<title>Builtin git-diff-files, git-diff-index, git-diff-stages, and git-diff-tree.</title>
<updated>2006-05-23T20:11:13Z</updated>
<author>
<name>Peter Eriksen</name>
<email>s022018@student.dtu.dk</email>
</author>
<published>2006-05-23T12:15:36Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=e8cc9cd98e2ecd7fd8bb03e725d470405c8e2b94'/>
<id>urn:sha1:e8cc9cd98e2ecd7fd8bb03e725d470405c8e2b94</id>
<content type='text'>
Signed-off-by: Peter Eriksen &lt;s022018@student.dtu.dk&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>diff-index: fix compilation warnings.</title>
<updated>2006-04-27T08:59:00Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-04-27T08:59:00Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=61678d87c2aad3bd668196993d8c32f298ddf5ff'/>
<id>urn:sha1:61678d87c2aad3bd668196993d8c32f298ddf5ff</id>
<content type='text'>
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Libified diff-index: backward compatibility fix.</title>
<updated>2006-04-22T11:03:32Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-04-22T10:58:04Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=5c21ac0e7c475c82039ab604ee9d7d8430889346'/>
<id>urn:sha1:5c21ac0e7c475c82039ab604ee9d7d8430889346</id>
<content type='text'>
"diff-index -m" does not mean "do not ignore merges", but means
"pretend missing files match the index".

The previous round tried to address this, but failed because
setup_revisions() ate "-m" flag before the caller had a chance
to intervene.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Libify diff-index.</title>
<updated>2006-04-22T09:43:00Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-04-22T09:43:00Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=e09ad6e1e3308fde346b4b6287d9441363806832'/>
<id>urn:sha1:e09ad6e1e3308fde346b4b6287d9441363806832</id>
<content type='text'>
The second installment to libify diff brothers.  The pathname
arguments are checked more strictly than before because we now
use the revision.c::setup_revisions() infrastructure.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>assume unchanged git: diff-index fix.</title>
<updated>2006-03-30T07:53:05Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-03-30T07:00:42Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=e464f4c3119b04712ab87329f3dd4d4f21b0a8a7'/>
<id>urn:sha1:e464f4c3119b04712ab87329f3dd4d4f21b0a8a7</id>
<content type='text'>
When the executable bit is untrustworthy and when we are
comparing the tree with the working tree, we tried to reuse the
mode bits recorded in the index incorrectly (the computation was
bogus on little endian architectures).  Just use mode from index
when it is a regular file.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>"Assume unchanged" git</title>
<updated>2006-02-09T05:54:42Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-02-09T05:15:24Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=5f73076c1a9b4b8dc94f77eac98eb558d25e33c0'/>
<id>urn:sha1:5f73076c1a9b4b8dc94f77eac98eb558d25e33c0</id>
<content type='text'>
This adds "assume unchanged" logic, started by this message in the list
discussion recently:

	&lt;Pine.LNX.4.64.0601311807470.7301@g5.osdl.org&gt;

This is a workaround for filesystems that do not have lstat()
that is quick enough for the index mechanism to take advantage
of.  On the paths marked as "assumed to be unchanged", the user
needs to explicitly use update-index to register the object name
to be in the next commit.

You can use two new options to update-index to set and reset the
CE_VALID bit:

	git-update-index --assume-unchanged path...
	git-update-index --no-assume-unchanged path...

These forms manipulate only the CE_VALID bit; it does not change
the object name recorded in the index file.  Nor they add a new
entry to the index.

When the configuration variable "core.ignorestat = true" is set,
the index entries are marked with CE_VALID bit automatically
after:

 - update-index to explicitly register the current object name to the
   index file.

 - when update-index --refresh finds the path to be up-to-date.

 - when tools like read-tree -u and apply --index update the working
   tree file and register the current object name to the index file.

The flag is dropped upon read-tree that does not check out the index
entry.  This happens regardless of the core.ignorestat settings.

Index entries marked with CE_VALID bit are assumed to be
unchanged most of the time.  However, there are cases that
CE_VALID bit is ignored for the sake of safety and usability:

 - while "git-read-tree -m" or git-apply need to make sure
   that the paths involved in the merge do not have local
   modifications.  This sacrifices performance for safety.

 - when git-checkout-index -f -q -u -a tries to see if it needs
   to checkout the paths.  Otherwise you can never check
   anything out ;-).

 - when git-update-index --really-refresh (a new flag) tries to
   see if the index entry is up to date.  You can start with
   everything marked as CE_VALID and run this once to drop
   CE_VALID bit for paths that are modified.

Most notably, "update-index --refresh" honours CE_VALID and does
not actively stat, so after you modified a file in the working
tree, update-index --refresh would not notice until you tell the
index about it with "git-update-index path" or "git-update-index
--no-assume-unchanged path".

This version is not expected to be perfect.  I think diff
between index and/or tree and working files may need some
adjustment, and there probably needs other cases we should
automatically unmark paths that are marked to be CE_VALID.

But the basics seem to work, and ready to be tested by people
who asked for this feature.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>diff-index: make --cc a synonym for -p for now.</title>
<updated>2006-02-06T00:36:12Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2006-02-06T00:36:12Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=4abd89648eb40384556e2118e74be03325d0b05d'/>
<id>urn:sha1:4abd89648eb40384556e2118e74be03325d0b05d</id>
<content type='text'>
It could be made later to show unmerged state nicer than the
default as we did for diff-files later, but this would suffice
for now.  We would like to make --cc the default for 'git diff'.

Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Only use a single parser for tree objects</title>
<updated>2006-01-26T09:08:29Z</updated>
<author>
<name>Daniel Barkalow</name>
<email>barkalow@iabervon.org</email>
</author>
<published>2006-01-26T06:13:36Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=521698b1538fb3c9bd818ee98f2c17d2c80c9605'/>
<id>urn:sha1:521698b1538fb3c9bd818ee98f2c17d2c80c9605</id>
<content type='text'>
This makes read_tree_recursive and read_tree take a struct tree
instead of a buffer. It also move the declaration of read_tree into
tree.h (where struct tree is defined), and updates ls-tree and
diff-index (the only places that presently use read_tree*()) to use
the new versions.

Signed-off-by: Daniel Barkalow &lt;barkalow@iabervon.org&gt;
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>code comments: spell</title>
<updated>2005-12-29T09:32:56Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-12-29T09:30:08Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=82f9d58a397e18e824eb0e16ee141e92fbd8d20b'/>
<id>urn:sha1:82f9d58a397e18e824eb0e16ee141e92fbd8d20b</id>
<content type='text'>
Signed-off-by: Junio C Hamano &lt;junkio@cox.net&gt;
</content>
</entry>
<entry>
<title>Move diff.renamelimit out of default configuration.</title>
<updated>2005-11-22T07:00:50Z</updated>
<author>
<name>Junio C Hamano</name>
<email>junkio@cox.net</email>
</author>
<published>2005-11-22T06:52:37Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/git/commit/?id=9ce392f4826558357af2b2c7eb6ad876fdb53a91'/>
<id>urn:sha1:9ce392f4826558357af2b2c7eb6ad876fdb53a91</id>
<content type='text'>
Otherwise we would end up linking all the unneeded stuff into git-daemon
only to link with git_default_config.

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