shithub: git9

ref: ec707628ca8f461a1088a2a9e07bd89f0990338f
dir: /add/

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

usage='
	git/add [-r] file ...
		-r        remove file
'

gitup

add='tracked'
del='removed'
while(~ $1 -* && ! ~ $1 --){
	switch($1){
	case -r
		add='removed'
		del='tracked'
	case *
		usage
	}
	shift
}
if(~ $1 --)
	shift

rel=`{sed 's@^'$gitroot'/*@@' <{echo $dir}}
if(~ $#rel 0)
	rel=''
for(f in `{walk -f $*}){
	if(! ~ `{cleanname $f} .git/*){
		addpath=.git/index9/$add/$rel/$f
		delpath=.git/index9/$del/$rel/$f
		mkdir -p `{basename -d $addpath}
		mkdir -p `{basename -d $delpath}
		if(! test -e $addpath)
			walk -eq $f > $addpath
		rm -f $delpath
	}
}