David Woodhouse <dwmw2@xxxxxxxxxxxxx> writes: > On Thu, 2006-07-13 at 17:39 -0700, Junio C Hamano wrote: >> With modern enough git, you can rewrite >> KBUILDSHA=`git ls-tree $TREE -- Kbuild | cut -f3 -d\ | cut -f1` >> with >> KBUILDSHA1=`git rev-parse $TREE:Kbuild` > > > Aha. Thanks. > >> I am not sure what function incparent() is trying to do with >> this: >> >> git rev-list --max-count=1 --topo-order $1 -- . > > Find the latest ancestor commit which actually changed any files. The > first script has a similar line, except that it finds the latest > ancestor which changed anything in include/ > > Consider a kernel tree with commits A-->B-->C-->D, of which only A and C > change anything in include/ and in fact only C actually changes the > _exported_ headers after the unifdef and sed bits. > > The first script (extract-khdrs-git.sh) creates a 'stage1' branch which > only contains commits A'-->C', with the _exported_ header tree for each. > > The second script (extract-khdrs-stage2.sh) then creates the master > branch with the same tree objects, but omitting the commits which don't > change anything. So it contains only commit C'' I guess what I was getting at was if you can avoid creating commits that do not change anything from previous in stage1 branch, you do not have to do this, but I haven't studied stage1 script deeply enough. - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html