2012-09-13 10 views
1

bash 스크립트에서 svn:externals 특성을 설정하려고합니다. 실패 라인은 다음과 같습니다스크립트에서 svn : externals을 설정하십시오.

$Version
svn propset svn:externals \'WEB-INF/src/com/project https://subversion.assembla.com/svn/myProject/branches/Release_$Version/com/project\' . 

명령 행 인수에서 가져온 변수입니다.

문제는이 줄은 프롬프트에서 제대로 작동하지만 스크립트에서는 작동하지 않습니다. 필자는이 줄을 콘솔에 표시하고 복사하여 명령 프롬프트에 붙여 넣고 실행하여 테스트했습니다. 그것은 프롬프트에서 괜찮지만 스크립트에서 작동합니다. 스크립트에서 실행할 때 다음 오류가 발생합니다.

svn: E200009: Cannot mix repository and working copy targets 

시간 동안 인터넷을 검색했지만 답변을 찾을 수 없습니다. 문제는 '문자를 이스케이프하는 데 사용되는 이스케이프 문자와 관련이있을 수 있지만 나는 그것을 고칠 방법을 모르겠다.

답변

2

따옴표와 백 슬래시의 올바른 조합을 확실히 찾을 수는 있지만 대신 임시 파일을 사용하지 않는 이유는 무엇입니까? 다음과 같이 입력하십시오 :

cat > some_temp_file << EOF 
WEB-INF/src/com/project https://subversion.assembla.com/svn/myProject/branches/Release_$Version/com/project 
EOF 
svn propset svn:externals --file some_temp_file 
rm -f some_temp_file 

참고 : 미리보기를 테스트하지 않았습니다.

+0

감사합니다. Nicola,이 시도하고 작동합니다. 명확하고 간결한 답변 주셔서 감사합니다. – user1668073