shithub: git9

ref: caf5192dd342460e8685a113c48ee5fa06587292
dir: /revert/

View raw version
#!/bin/rc
rfork e
. /sys/lib/git/common.rc

usage='
	git/revert [-c query] file...
		-c        revert to commit "query" (default: HEAD)
'

rel=`{pwd}
gitup

commit=/mnt/git/HEAD
while(~ $1 -* && ! ~ $1 --){
	switch($1){
	case -c;
		commit=`{git/query -p $2}
		shift
	case *;
		usage
	}
	shift
}
if(~ $#* 0)
	usage

rel=`{echo $rel | sed 's@^'$gitroot'/?@@'}
if(~ $#rel 0)
	rel=''

for(f in `$nl{cd $commit/tree/ && walk -f ./$rel/$*}){
	mkdir -p `{basename -d $f}
	cp -- $commit/tree/$f $f
}