windows 에서 명령행 svn add --force * 이거 말고 다른 대안 없나요?

ikpil의 이미지

svn add --force *

이렇게 할 경우 너무 시간이 걸려서 좀더 빠른 add 방법을 찾는 중

svn status | grep "^\?" | awk -F"       " {print$2} | xargs svn add

하면 잘될거 같은데, 윈도우에 grep, awk, xagrs 가 없어서, gnu32 에서 설치 받고
해보면, 문제가 많아 안되고 있습니다.

D:\hehe\test>svn status
?       gawk
?       새 폴더\english.xml
?       새 폴더\한글.xml
 
D:\hehe\test>svn status | grep "^\?" | awk -F"       " {print$2}
gawk
awk: (FILENAME=- FNR=2) fatal: print to "standard output" failed (Arg list too long)
 
D:\hehe\test>

영문인 gawk 만 잘나오고, 한글/띄어쓰기가 모두 문제입니다.
혹시 방법이 있나요?

ikpil의 이미지

awk
1. 윈도우에서 awk 프로그램 보다 nawk 를 사용해야 한글이 잘나옵니다.
2. 윈도우에서 nawk 스크립트가 명령행으로 하면, 몇가지 충돌이 일어나므로, 스크립트를 파일로 만들어 써야 합니다. 옵션 -f

xarg
1. 윈도우에서 디렉토리 구분자 '\'는 잘못 처리 되므로, awk 에서 \ 를 / 로 바꾸어 주어야 합니다.

그러므로, 새로 추가되는 파일들은 다음과 같이 윈도우에서 처리 할수 있습니다.

script.nawk

{
	FS = "       ";
	gsub(/\\/, "\/");
	print $2;
}

cmd에서 다음과 같이 처리해 줍니다.

svn status | grep "^\?" | nawk -f script.nawk | xargs -i svn add {}

이상입니다.
해당 전제를 잘 이해하면, 명령행으로 svn 없이 지워진 파일도 svn delete 를 이용할 수 있습니다.

madman93의 이미지

감사합니다. ^.^

---------------------------------------------
git init
git add .
git commit -am "project init"
---------------------------------------------