Subversion 서버 버전 번호를 찾는 방법은 무엇입니까?
서버에서 Subversion 1.5를 실행하고 있는지 알고 싶습니다.
어떻게 알 수 있습니까?
또한 내 SVN 클라이언트 버전 번호를 알고 있으면 좋을 것입니다. svn help
도움이되지 않았습니다.
참고 : 프로젝트의 개정 번호 등을 원하지 않습니다 .이 질문은 Subversion 소프트웨어 자체에 관한 것입니다.
서브 버전 저장소의 버전을 찾으려면 다음을 수행 할 수 있습니다.
- 웹 및 페이지 하단의 저장소를 보면
"Powered by Subversion 버전 1.5.2 (r32768)" 와 같이 표시 됩니다. - 커맨드 라인에서 : <컬을 삽입하고, 여기에 하나의 라이너를 바르십시오>
표시되지 않으면 페이지의 소스를보십시오
<svn version="1.6.13 (r1002816)" href="http://subversion.tigris.org/">
서브 버전 CLIENT의 경우 :
svn --version
충분할 것이다
이 응답들을 병합합시다 :
REPOSITORY / SERVER (원래 질문)의 경우 :
Subversion 서버에 액세스 할 수있는 경우 :
HTTP / HTTPS에 액세스하는 경우 :
브라우저를 통해 서버에 액세스 할 때는 "Powered by Subversion"라인을 참조하십시오.
브라우저를 통해 저장소에 액세스 한 후 HTML 소스에 임베드 된 버전 문자열을 찾으십시오. elviejo 와 jaredjacobs의 이전 답변 에서 . 마찬가지로 ??에서 브라우저의 개발자 도구 (일반적으로 Ctrl+ Shift+ I)를 사용하여 전체 응답을 읽습니다. 이것은 인증서 및 권한 부여를 처리하는 가장 쉬운 (자동화되지 않은) 방법이기도합니다. 브라우저가이를 수행합니다.
에서, 응답 태그 (다음은 HTML 소스에 표시되지 않습니다) 확인 이전 응답 에 의해 크리스토퍼
wget -S --spider 'http://svn.server.net/svn/repository' 2>&1 | sed -n '/SVN/s/.*\(SVN[0-9\/\.]*\).*/\1/p'
svn : // 또는 ssh + svn 액세스 인 경우
-
svnserve --version (run on svn server)
-
ssh user@host svnserve --version
GoogleCode SVN 서버 인 경우
Check out the current version in a FAQ:
http://code.google.com/p/support/wiki/SubversionFAQ#What_version_of_Subversion_do_you_use?
다른 사용자 정의 SVN 서버 인 경우
TBD
이 답변을 완료하려면 편집하십시오
클라이언트의 경우 (원래 질문이 아님) :
svn --version
서버에서 : svnserve --version
svnserve 기반 구성의 경우 (svn : // 및 svn + xxx : //).
(완전성을 위해).
SVN 서버 버전을 얻는 가장 간단한 방법은 다음과 같습니다. SVN 저장소에 HTTPS 가 필요한 경우에도 HTTP가 작동합니다 .
$ curl -X 옵션 http : // my-svn-domain / <! DOCTYPE HTML PUBLIC "-// IETF // DTD HTML 2.0 // EN"> <html> <head> ... </ head> <본문> ... <address> 아파치 /2.2.11 (데비안) DAV / 2 SVN / 1.5.6 PHP / 5.2.9-4 ... </ address> </ body>
</ html>
HTTP 기반 서버의 경우 http://svn.apache.org/repos/asf/subversion/trunk/tools/client-side/server-version.py에 서버 버전을 찾는 Python 스크립트가 있습니다 .
당신은 클라이언트 버전을 얻을 수 있습니다
`svn --version`
Subversion 서버 버전이 HTML 목록에 인쇄되지 않은 경우 서버에서 반환 한 HTTP RESPONSE 헤더에서 사용할 수 있습니다. 이 쉘 명령을 사용하여 얻을 수 있습니다
wget -S --no-check-certificate \
--spider 'http://svn.server.net/svn/repository' 2>&1 \
| sed -n '/SVN/s/.*\(SVN[0-9\/\.]*\).*/\1/p';
SVN의 서버가 사용자 이름과 암호를 제공해야하는 경우, 다음 추가 wget
매개 변수를 --user
하고 --password
이 같은 명령에
wget -S --no-check-certificate \
--user='username' --password='password' \
--spider 'http://svn.server.net/svn/repository' 2>&1 \
| sed -n '/SVN/s/.*\(SVN[0-9\/\.]*\).*/\1/p';
또 다른 옵션 : Firefox (14.0.1을 사용하고 있습니다)와 SVN 웹 인터페이스가있는 경우 :
- 열기 도구 -> 웹 현상 제> 웹 콘솔 의 repo 페이지
- 페이지 새로 고침
- GET 라인을 클릭하십시오
- 찾는 위치 응답 헤더의 상기 섹션 서버 : 라인
"SVN / 1.7.4"문자열 또는 이와 유사한 문자열이 있어야합니다. 다시 말하지만, 위에서 언급 한 "ServerTokens Full"이있는 경우에만 작동합니다.
서버에 접속하여 직접 확인하는 것 외에는 서버에서 실행중인 Subversion 버전을 쉽게 찾을 수있는 방법 이 없습니다 .
그러나 이것은 생각만큼 큰 문제가 아닐 수 있습니다. Subversion 클라이언트는 많은 작업을 처리했으며 대부분의 Subversion 클라이언트 버전은 거의 모든 버전의 서버에서 작동 할 수 있습니다.
서버 버전이 실제로 클라이언트와 차별화 된 마지막 릴리스는 병합 추적이 추가 될 때 릴리스 1.4에서 릴리스 1.5로 변경되었습니다. 병합 추적은 버전 1.6에서 크게 개선되었지만 클라이언트와 서버 간의 상호 작용에는 실제로 영향을 미치지 않습니다.
Subversion 1.8의 최신 변경 사항을 살펴 보겠습니다.
svn move
이제는 일류 작업입니다 . Subversion은svn move
issvn copy
및 a가 아니라는 것을 마침내 이해합니다svn delete
. 그러나 이것은 클라이언트가 처리하고 실제로 서버 버전에 영향을 미치지 않는 것입니다.svn merge --reintegrate
더 이상 사용되지 않음 : 서버의 버전이 1.5 이상이면 문제가되지 않습니다.- 속성 상속 : 이것은 또 다른 1.8 릴리스 업데이트이지만 모든 Subversion 서버에서 작동하지만 1.8을 실행하는 Subversion 서버는 상속 가능한 속성에서 더 나은 성능을 제공합니다.
- 상속 가능한 두 가지 속성-
svn:global-ignores
그리고svn:auto-props
: 아아! 우리가 정말로 원했던 것. Subversion 구성 파일 자체에 의존하지 않고이 두 속성을 설정하는 방법. 그러나 이것은 클라이언트 전용 문제이므로 사용중인 서버의 버전이 중요하지 않습니다. - gnu-agent 메모리 캐싱 : 다른 클라이언트 전용 기능.
- fsfs 성능 향상 및 authz 리포지토리 인증. 멋진 기능이지만 사용중인 클라이언트 버전에 관계없이 작동합니다.
모든 기능 중 하나만 서버 버전 1.5 이상에 의존합니다 (1.4는 오래 사용되지 않습니다. 1.8의 새로운 기능은 작업 사본의 성능을 향상 시키지만 서버는 1.8 버전입니다. 필요하지 않습니다. 서버 버전보다 클라이언트 버전의 영향을 훨씬 더 많이받습니다.
나는 이것이 당신이 원하는 대답이 아니라는 것을 알고 있지만 (서버 버전을 보는 공식적인 방법은 없습니다), 다행히도 서버 버전은 그다지 큰 영향을 미치지 않습니다.
이 시도:
ssh your_user@your_server svnserve --version
svnserve, version 1.3.1 (r19032)
compiled May 8 2006, 07:38:44
도움이 되길 바랍니다.
svn + ssh 구성의 경우 ssh를 사용하여 호스트 시스템에서 svnserve --version을 실행하십시오.
$ ssh user @ host svnserve-버전
실제로 서버 역할을하는 시스템에서 svnserve 명령을 실행해야합니다.
웹 브라우저를 사용하여 SVN 주소로 이동하십시오. 소스 코드를 확인하십시오 ( Ctrl+ U). 그런 다음 HTML 코드와 같은 것을 찾을 수 있습니다.
<svn version="1.6. ..." ...
Firefox로 저장소를 찾아보고 Firebug로 요소를 검사하십시오 . NET 탭에서 페이지의 헤더를 확인할 수 있습니다. 그것은 다음과 같은 것을 가질 것입니다 :
Server: Apache/2.2.14 (Win32) DAV/2 SVN/1.X.X
Subversion 1.7 이상의 경우 서버는 서버 버전을 나타내는 바닥 글을 제공하지 않습니다. 그러나 다음 명령을 실행하여 응답 헤더에서 버전을 얻을 수 있습니다.
$ curl -s -D - http://svn.server.net/svn/repository
HTTP/1.1 401 Authorization Required
Date: Wed, 09 Jan 2013 03:01:43 GMT
Server: Apache/2.2.9 (Unix) DAV/2 SVN/1.7.4
액세스 권한이없는 Subversion 서버에서도 작동합니다.
HTTP를 사용하여 Subversion 서버에 연결 하고 HTTP 헤더에서 버전 번호를 찾을 수 있습니다.
관리자가 'svnadmin upgrade'를 실행하지 않으면 저장소가 자동으로 업데이트되지 않습니다. 저장소의 버전 번호를 확인하려면 '형식'파일을 확인하십시오. @bdumitriu의 의견을 참조하십시오 .
명령 행에서 다음은 버전 번호를 제공해야합니다.
svn --version
참고 URL : https://stackoverflow.com/questions/141146/how-to-find-my-subversion-server-version-number
'development' 카테고리의 다른 글
XAMPP / Apache가 htdocs 외부에 파일을 제공하게하십시오 (0) | 2020.03.18 |
---|---|
SQL Server 테이블에서 n 개의 임의 행을 선택하십시오. (0) | 2020.03.18 |
xsd에서 .NET 4.0 클래스를 생성하는 방법은 무엇입니까? (0) | 2020.03.18 |
ViewResult ()와 ActionResult ()의 차이점 (0) | 2020.03.18 |
변수를 undefined로 설정하거나 undefined를 인수로 전달할 수 있습니까? (0) | 2020.03.18 |