2009-05-07 3 views
5

CVS에서 파일을 검사 할 때 확장되는 코드에서 키워드를 사용할 수 있습니다. CVS가 $GlobalRev$ 키워드를 사용하여 글로벌 개정판을 표시하고 싶습니다.TortoiseSVN과 함께 글로벌 리비전 번호 키워드를 어떻게 사용합니까?

Subversion에는 $Rev$ 명령이 있지만 파일이 변경된 최신 버전 만 표시됩니다. 나는 지금 1.51.6 nightly에 지금까지 아무런 문서가없는 svnversion 명령이 있다는 것을 알고 있습니다.

TortoiseSVN을 사용하여이 작업을 수행하는 방법을 알고 싶습니다.

답변

3

svnversion 계속 사용할 수 있으며, documented in 1.5

svnversion가 작업 복사본의 개정 혼합물을 요약 위한 프로그램입니다. 결과 수정 번호 또는 수정 버전 범위는 으로 표준 출력에 기록됩니다. 당신이 그것을 체크 아웃 한 후이 작업 카피의 개정을 얻을

사용은 KeywordExpansion에 대한 문서는 사용할 수 있도록 설계 방법을 설명합니다.

3

CVS에서와 같은 것을 가질 수있는 옵션이 없다고 생각합니다. 적어도 필자가 필요할 때 찾을 수 없었습니다.

대신 TortoiseSVN의 SubWCRev.exe을 사용하여 $WCREV$ 문자열을 포함하는 템플릿 파일을 현재 버전 번호로 변환하십시오.

2

내 2 센트 :

나는 현재 웹 기반의 Java 응용 프로그램에서 일하고 있어요. 이 아닌 빌드 서버 (Hudson)가 명령 행 서브 버전 실행 파일에 액세스 할 수 있습니다. 대신 소스를 가져 와서 응용 프로그램을 빌드하기 전에 repo에 액세스 할 수 있도록 순수 java Subversion 라이브러리가 함께 제공됩니다.

이제 빌드 프로세스가 필요하여 전체 수정 번호를 앱 홈 페이지에 포함해야합니다 (화면의 오른쪽 하단을 보면 StackOverflow와 비슷합니다).

불행히도 Subversion과 Ant는 잘 통합되어 있지 않습니다. 가장 좋은 것, SVNAnt은 명령 줄 svn.exe를 사용하는 것을 더 목표로 삼고 실행하는데 상당한 어려움을 겪었습니다.

결국 서브 버전 액세스를위한 순수 자바 라이브러리 인 SVNKit을 사용하여 수정 번호를보고 Google 파일에 삽입하는 빌드 스크립트를 수정하는 데 2 ​​시간이 걸렸습니다.

개인적으로, 나는 당신이 $Id$ 또는 $Rev$

+0

하나의 파일 만 변경하면 다른 파일도 모두 변경 하시겠습니까? 해당 수정 사항이 일부 의견에서 오타를 수정하는 경우에도? 그건 미친 짓이야! 나는 내 svn에서 그 기능을 절대로 원할 것이다 ... – Paulius

+10

커밋 후에 변경 될 파일이 몇 개 뿐이며, $ GlobalRev $ 키워드를 배치 한 곳이고 (아직 존재하지 않는) svn : global_rev 속성이 설정되었습니다. 실행중인 응용 프로그램을보고 컴파일 된 * 정확한 * SVN 개정판이 귀중한 지 알 수 있습니다. – Leonel

1

나는 위의 말을 이해하고 함께 할 것처럼, 각 파일에 삽입 할 변수, 말, $GlobalRev$를 만드는 방법에 대해 열심히 무엇을 볼 수 없습니다. 하지만 globalrev는 한 경우에 유용 할 수 있습니다 ...

실행중인 모든 실행 파일에서 마지막 빌드 버전을 사용하려는 경우.

(버전을 넣을 경우)응용 프로그램의 제목과 함께 소유권 파일 하나의 타당성, 당신은 버전 번호를 추가 할 수 있습니다.

그래서 테스터 나 사용자가 문제를 지적하면 릴리스와 번호를 비교하여 기능이 있는지 확인하십시오. 이 변수 $ GlobalRev $는 작은 컨텍스트에서 사용되지만 유용 할 수 있습니다.

감사합니다.

관련 문제