문제
로컬 컴퓨터에서는 Subversion Repository의 개정 번호를 얻는 것이 문제가되지 않습니다. svnversion
. 이제 온라인 저장소에서 개정 번호를 얻고 싶습니다 (APACHE2가있는 WebDav).
나는 이것을 시도했다 :
svnversion http://nick:password@www.myhost.de/svn/test`
브라우저에서는 평소와 같이 작동했지만 (오타가 아닌지 확인하기 위해) svnversion
디렉토리를 찾을 수 없다고 말했습니다. 그래서 나는 내가 잘못된 길을 가고 있다고 가정합니다.
개정 번호를 어떻게 얻을 수 있습니까?
해결책
svnversion 사본 작업을위한 것이지만 저장소를 쿼리하는 한 가지 방법은 사용하는 것입니다. SVN 정보 다음과 같이 :
svn info http://nick:password@www.myhost.de/svn | grep Revision
다른 팁
Linux에서 개정 번호 만 원한다면 :
SVN 정보 http : // nick : password@www.myhost.de/svn/test | grep '^개정 :'| awk '{print $ 2}'
svn info http://nick:password@www.myhost.de/svn/test
개정을 포함하여 원격 저장소에 대한 정보를 반환해야합니다.
숫자 부분 만 얻을 수있는 편리한 awk one-liner :
svn info http://nick:password@www.myhost.de/svn | awk '/Revision:/ { print $2 }'
새 버전의 SVN (1.9)에서는 다음을 수행 할 수 있습니다.
svn info --show-item revision svn://...
18436
개정 번호 만 반환해야합니다.
로케일이 영어가 아닌 경우 모든 Grep 버전이 중단됩니다.
이전 버전의 경우 시도해 볼 수 있습니다
svn info --xml | grep '<entry' -3 | awk -F '=' '/revision="/ { print $2 }' | grep -o '[0-9]\+'
XML2 패키지에 더 나은 방법을 가질 수있는 경우 :
svn info --xml | xml2 | grep /info/entry/@revision | grep -o '[0-9]\+'
제휴하지 않습니다 StackOverflow