2012-10-18 1 views
0

jenkins가 내 저장소를 svn에서 체크 아웃 한 후 특정 파일이 마지막 체크 아웃 이후 변경되었는지 알고 싶습니다. 빌드 프로세스는 jenkins가 작업 공간을 업데이트하는 것으로 시작하므로 svn status -u을 통해 확인할 수 있습니다.Jenkins : svn 업데이트로 파일이 변경되었는지 확인

여기 배경은 프로젝트 요구 사항 (requirements.txt)이 포함 된 파일이 변경되었으며이 경우 환경 (virtualenv)을 업데이트하는지 확인하기위한 것입니다.

내가 마지막 체크 아웃의 개정 번호를 저장하고 그 개정에 대한 또는 SVN은 diff requirements.txt SVN 로그의 출력과 비교해야?

답변

1

나는 귀하의 경우 여기 모방하려고합니다

z:\j-wc>svn ls -v . 
     2 Badger    окт 19 05:40 ./ 
     2 Badger    13 окт 19 05:40 a.txt 
     2 Badger    14 окт 19 05:40 requirements.txt 

J-화장실은 현재 HEAD 이외의 repo의 이전 버전으로 업데이트 작업 복사본,이다

z:\j-wc>svn ls -v file:///Z:/repo/trunk 
     5 Badger    окт 19 05:44 ./ 
     2 Badger    13 окт 19 05:40 a.txt 
     5 Badger    39 окт 19 05:44 b.txt 
     4 Badger    21 окт 19 05:43 requirements.txt 

몇 시간 전에

(svn up 전) "requirements.txt가 변경 될 예정입니까?" 시도해 보겠습니다.

z:\j-wc>svn diff -r "BASE":"HEAD" requirements.txt | wc -l. (로컬 파일을 영구적으로 상징 개정 이름 BASE + HEAD를 사용할 수와 화장실 내부의 차이) 변화는 DIFF 출력 결과를 발생하지 않은 경우, 변경없이 == 더 출력

z:\j-wc>svn diff -r "BASE":"HEAD" requirements.txt 
Index: requirements.txt 
=================================================================== 
--- requirements.txt (working copy) 
+++ requirements.txt (revision 5) 
@@ -1,2 +1,3 @@ 
Req 1 
Req 2 
+Req 3 
+0

그러나 이것은 단지 오른쪽 svn의 최대 전에 작동합니까? 젠킨스가 환경을 업데이트해야 할 빌드 단계를 실행할 때 이미 svn을 완료했습니다. 나는 생각한다, 아마 나는 svn보다 핍의 방향으로 더 많이보아야한다. – kioopi