From: Petr Baudis Date: Wed, 27 Apr 2005 23:51:16 GMT Subject: Re: I'm missing isofs.h Message-ID: <20050427235115.GN22956@pasky.ji.cz> In-Reply-To: <20050426214338.32e9ac27.akpm@osdl.org> Dear diary, on Wed, Apr 27, 2005 at 06:43:38AM CEST, I got a letter where Andrew Morton told me that... > In a current tree, using git-pasky-0.7: > > bix:/usr/src/git26> cat .git/tags/v2.6.12-rc3 > a2755a80f40e5794ddc20e00f781af9d6320fafb > bix:/usr/src/git26> git diff -r v2.6.12-rc3|grep isofs.h > +#include "isofs.h" > #include "zisofs.h" > +#include "isofs.h" > +#include "isofs.h" > +#include "isofs.h" > #include "zisofs.h" > +#include "isofs.h" > +#include "isofs.h" > +#include "isofs.h" > +#include "isofs.h" > > > That diff should have included the addition of the new isofs.h, but it > isn't there. Ouch. Well, using -r v2.6.12-rc3: is a workable workaround, but this is a problem. With the trailing :, you are diffing against your latest commit, whilst without the trailing :, you are diffing against your working tree. ;-) The problem is in how the latter is implemented: export GIT_INDEX_FILE=$(mktemp -t gitdiff.XXXXXX) cp .git/index $GIT_INDEX_FILE read-tree -m $(tree-id "$id1") update-cache --refresh tree=$(tree-id "$id1") diff-cache -r -z $tree | xargs -0 cg-Xdiffdo ... So, we are recording our adds to the index cache, but here we use a different one with the adds are not recorded - so diff-cache won't catch them. So I fixed this by doing diff-cache --cached and updating the tmp index by the +- entries. Pushed out, thanks. -- Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor