Code

[PATCH] Make 'git checkout' a bit more forgiving when switching branches.
authorJunio C Hamano <junkio@cox.net>
Sun, 11 Sep 2005 21:12:08 +0000 (14:12 -0700)
committerJunio C Hamano <junkio@cox.net>
Tue, 13 Sep 2005 02:15:03 +0000 (19:15 -0700)
commit7f88c8463caa14ca397048f8e576e348ce73203a
treee0bd6601780818570eb85ef8235b19c40b3c160b
parent4a5b63e3e966184aa1ff32770410d485202562ca
[PATCH] Make 'git checkout' a bit more forgiving when switching branches.

If you make a commit on a path, and then make the path
cache-dirty afterwards without changing its contents, 'git
checkout' to switch to another branch is prevented because
switching the branches done with 'read-tree -m -u $current
$next' detects that the path is cache-dirty, but it does not
bother noticing that the contents of the path has not been
actualy changed.

Since switching branches would involve checking out paths
different in the two branches, hence it is reasonably expensive
operation, we can afford to run update-index before running
read-tree to reduce this kind of false change from triggering
the check needlessly.

Signed-off-by: Junio C Hamano <junkio@cox.net>
git-checkout.sh