2013-05-25 1 views
4

Apache를 통해 DAV를 통해 액세스 할 수있는 svn (버전 1.6.11 (r934486)) repo를 호스팅하는 centos6 Linux 서버가 있습니다. 나는 Windows tortoise-svn 클라이언트 1.7.12를 사용하여 repo에 액세스하고 있습니다.svn pre-commit 후크에서 출력을 생성 할 수 없습니다

나는 항상 실패 할 매우 간단한 테스트 사전 커밋 (pre-commit) 훅을 가지고있다. 커밋에서

echo "this is a test" 
exit 1 

시도는 내 클라이언트에서 "이 테스트입니다"보고 기대했지만, 난 아무 출력 종료 후크 사전 커밋 점점

Sending content: D:\code\foo\test.c 
Error: Commit failed (details follow): 
Error: Commit blocked by pre-commit hook (exit code 1) with no output. 
Completed!: 

실패. hooks/pre-commit은 실행 가능하며 Linux 서버에서 직접 실행될 때 예상되는 출력을 반향합니다.

내가 누락 된 부분에 대한 설명이 있으십니까?

답변

6

stderr에 인쇄 된 출력 만 클라이언트에 릴레이됩니다. 그래서 다음과 같이 변경하여 테스트 후크 작업을해야 다음 pre-commit 후크 프로그램이 0이 아닌 종료 값을 반환하면

"는 커밋 : 참고로

echo "this is a test" >&2 
exit 1 

을, 여기에 Subversion book에서 관련 인용입니다 중단되고 커밋 트랜잭션이 제거되고 stderr에 인쇄 된 이 클라이언트로 마샬링됩니다. "

+0

감사합니다. –

관련 문제