Git: git9

git9 @ 7c5c8a7e0a33a2c83860dc9dcb2dcf3d6c23b2e4

#!/bin/rc
rfork en
. /sys/lib/git/common.rc

gitup

flagfmt='c:query query' args='file ...'
if (! eval `''{aux/getflags $*} || ~ $#* 0)
	exec aux/usage

commit=$gitfs/HEAD
if(~ $#query 1)
	commit=`{git/query -p $query}

files=`$nl{cleanname -d $gitrel $* | drop $gitroot}
for(f in `$nl{cd $commit/tree/ && walk -f ./$files}){
	mkdir -p `{basename -d $f}
	cp -x -- $commit/tree/$f $f
	touch $f
	git/add $f
}
exit ''