SVN 개정 번호를 ASP.NET 웹 사이트와 동기화하려면 어떻게 하나요?

스택 오버플로 하단에 서브버전 버전 번호가 있습니다:

svn 개정: 679

이러한 자동 버전 관리를 내 '.NET 웹 사이트/애플리케이션', Windows Forms, WPD 프로젝트/솔루션에 사용하고 싶습니다.

어떻게 구현하나요?

질문에 대한 의견 (3)
해결책

팟캐스트 녹취록을 훑어본 결과 Jeff가 CruiseControl.NET을 사용하고 있는 것 같습니다. 소스 제어에서 프로덕션까지 자동화된 배포 기능이 있는 것 같습니다. 여기서 삽입이 일어나고 있는 것일까요?

해설 (2)

우리가 이 일을 통해 xUnit.net 의 오토메이티드 빌드. 우리가 사용하는 'CruiseControl.net' (노력하고 있어 아웃해야 팀시). 우리가 우리를 위해 지속적 통합 작업을 실행할 수 있는 마즈베일드 구축하십시오 ZIP 파일을 자동으로 변경됩니다 구축하십시오 제대로 버전의 dll 및 비용 때문에, 그 결과 집합이 포함되어 있습니다.

우리의 [마즈베일드 파일] [2] 에는 유진타스크 DLL 않는 참조로는 정규식이 교체품을: (you& # 39, re welcome to use this DLL 의 적용을 받는 등 밀리초입니다 pl 라이센스에서 it& # 39 도)

&lt pre>; &amp 유진타스크 lt;; 아서 블라이프일 = &quot 3rdParty\CodePlex.MSBuildTasks.dll"; 다세나미 = &quot CodePlex.MSBuildTasks.RegexReplace&quot /& gt;;; &lt /pre>;

다음으로, 제공되는 경쟁정보 시스템을 통해 자동으로 푸십시오 빌드 번호입니다. 소스 제어입니다 공급자입니다 전달하십시오 수도 있습니다 하지만 소스 버전 번호를 스케쳐내 제공할 수 있는 제도가 아니라 우리가 늑대굴에서 빌드 # 더 유용한 결과를 볼 수 있기 때문에 통합 CI, CI 는 또한 이 (가) 변경 세트에 의해 구축하십시오 번호, 해당 링크를 백됩니다 구축하십시오 %hskb) 이 포함됐다.

&lt pre>; &amp, lt;! - 수 - &gt 구축하십시오 캐스케이딩이란 시도_횟수 찾을 수 있습니다.

& # 39 &quot &amp, lt, 프로페티그룹 찼음을 = $ (BuildNumber) & # 39;;; = & # 39, & # 39 &quot >;; &amp, lt, $ (BUILD_NUMBER), lt, /BuildNumber&gt &amp BuildNumber>; &amp /PropertyGroup&gt lt;;; & # 39 &quot &amp, lt, 프로페티그룹 찼음을 = $ (BuildNumber) & # 39;;; = & # 39, & # 39 &quot >;; &amp, lt, $ (케네트라벨), lt, /BuildNumber&gt &amp BuildNumber>; &amp /PropertyGroup&gt lt;;; & # 39 &quot &amp, lt, 프로페티그룹 찼음을 = $ (BuildNumber) & # 39;;; = & # 39, & # 39 &quot >;; , lt, /BuildNumber&gt 0&amp BuildNumber&gt &amp lt;; &amp /PropertyGroup&gt lt;;; &lt /pre>;

(우리는) 에서, 이는 BUILD_NUMBER 시도하시겠습니까, 이는 팀시 관심용 케네트라벨 충스러웠으니 CC.net, 아웃하기로 괜찼습니다 있으면 우리는 우리가 할 수 있도록 기본 0 으로 테스트하려면 스크립트입니다 오토메이티드 구축하십시오 수동으로로.)

다음 작업, 우리는 우리가 우리의 모든 로 설정하는 빌드 번호입니다 붙여넣습니다 GlobalAssemblyInfo.cs 파일 링크 프로젝트:

&lt pre>; &amp, lt, 대상 Name = &quot SetVersionNumber&quot >;; &amp 레그렉레프리스 lt;; 패턴 = & # 39, & # 39 AssemblyVersion\ (&quot .\d+"; (\d+.\d+.\d+)). 아서 블라이버시온 교체품 = & # 39, & # 39 (&quot 1, $. $ (buildnumber) "). & # 39, & # 39 = GlobalAssemblyInfo.cs 파일을 />; attrib 명령 실행, lt,, - r = &quot &amp xunit.installer\App.manifest&quot /&gt. &amp /Target&gt lt;;; &lt /pre>;

이 버전 번호를 함께 a.b.c.부일드 움베르트 아서 블라이버시온 찾을 특성 및 덮어씁니다 여기서 a. b. c. d 보통 소스 트리는 대화할거에요 남겨두십시오 체크 인되기 처음 세 부분으로 구성기는 번호임 고정 및 4 dell. 영 (프리에벌린 it& 오늘 # 39 의 1.0.2.0).

내 앞에 있는 작업 프로세스에 세베르시온움베르 구축하십시오 smartupdate 너회의 구축하십시오 과제다. 결국 우리가 사용하는 Zip 임무를 압축합니다 구축하십시오 결과 도왔으매 우리는 우리 역사에 대한 모든 이진용으로 오토메이티드 구축하십시오.

[2]: http://www.codeplex.com/xunit/SourceControl/FileView.aspx =, = 20735 창스티드 115610&amp itemId?

해설 (0)

코드의 아무 곳에나 다음을 추가하면 됩니다.

$Id:$

예를 들어 @Jeff가 그랬죠:

<div id="svnrevision">svn revision: $Id:$</div>

를 입력하고 체크인하면 서버에서 $Id:$를 현재 리비전 번호로 바꿉니다. 또한 이 참조를 찾았습니다.

날짜:$, $개정:$, $수정:$**도 있습니다.

해설 (7)

39 사용하는 경우, 아스피네 으로 스택 오버플로 높여줍니까) ',' re you& MVC I& # 39, ve 기록되었으므로 [ui_policytable_java_spe_policy 쉽게 따를 수 있다, 디스플레이 방법에 대한 최신 3 단계 안내선 SVN 수정번호] [1]. 혼자 생각하는 우리 섹스한거요 안내선 영감을 매우 질문! o)

[1]: http://www.fatlemon.co.uk/2008/12/automatic-svn-revision-numbering-in-aspnet-mvc/, www.fatlemon.co.uk mvc - 아스피네 에서 svn 개전판이 &quot 자동 번호 매기기를 &quot.

해설 (5)

@Balloon [서브와크레프] 패키지된 TortoiseSVN 사용하는 경우 사용할 수 있습니다 (http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-subwcrev.html) 프로그램. 그냥 작업 복제본에 쿼리합니다 사이이고 가장 높은 번호. 알듯 수 있을 것으로, 이 문제가 없으나 it& # 39 의 클라이언트 측 외곽진입 서버측 프로그램, 이후 좋은 명령행을 상당히 쉽게 사용할 수 있도록 해당 출력입니다 캡처하려면 있어야 합니다.

해설 (0)

'$rev' 등은 개별 파일의 수정본이므로 파일이 변경되지 않는 한 변경되지 않습니다. 웹 페이지에 있는 숫자는 (아마도 여기서는 전체 프로젝트의 SVN 리비전 번호일 것입니다. 이는 다른 사람들이 지적한 파일 리비전과는 다릅니다.

이 경우 CCNET이 프로젝트의 리비전 번호를 가져와서 해당 번호로 웹 페이지의 일부를 다시 작성하고 있다고 가정합니다. 모든 CI 솔루션은 이 작업을 수행할 수 있어야 하며, CCNET 및 Teamcity(웹 페이지는 아니지만 배포/어셈블리 버전의 자동 버전 관리)를 사용하여 직접 설정할 수 있습니다.

이 작업을 수행하려면 이를 지원하는 CI 솔루션을 사용하거나 빌드 프로세스(MSbuild/Nant)를 사용하여 해당 버전을 저장하고 '배포'하기 전에 파일에 쓰세요.

해설 (0)

39 의 @BradWilson& 추가할 대답: &quot, 소스 버전 번호를 제공하기 위해 소스 제어입니다 공급자입니다 전달하십시오 수도 있습니다 want&quot 경우,

Subversion 및 접속하십시오 마즈베일드: 마즈베일드 커뮤니티 묒뾽 프로젝트

해설 (0)