2009-11-04 4 views
2

내가 어셈블리 정보 버전 번호를 사용 (2008 VS) 부 버전 번호마다 빌드를 진행 해결책 ?자동으로

답변

2

필자는 * .csproj 또는 * .vbproj 파일에서 몇 가지 수동 수정이 필요하지만이 파일은 매우 완벽하게 작동하며 매우 유연합니다.이 숫자는 MSBuild Task입니다.

+0

나는 이것이 내가 더 필요한 것을 목표로 삼는다 고 생각한다. 테스트 할 시간이 좀 걸릴 것이다. 감사 ! – Dani

+0

이것은 약간의 문제입니다, 나는 그들을 체크 아웃하지 않으면 파일을 잠그는 svn 제어 환경을 사용하고 있습니다. 이 솔루션을 사용하면 assembly.cs를 잠 그어 빌드 할 수 있습니다. 나는 이것을 피할 수있는 방법이 없다고 생각합니다 ... 그러나 그것은 해결책에서 재미를 얻습니다. – Dani

1

비주얼 스튜디오는을위한 빌드 - mecanism 있습니다 AssemblyInfo.cs 내부

는이 하나의 설정을 변경 :

[assembly: AssemblyVersion("1.0.*")] 

별표 기호는 각각 버전 1.0을 구축에 할당하는 Visual Studio를 지시합니다. ds, 여기서 d는 2000 년 2 월 1 일 이후의 일 수이고 s는 자정/2 이후의 초 수입니다.

편집 : http://www.codeproject.com/KB/dotnet/ManagingAssemblyVersions.aspx에 대한 많은 정보가있다 : 버전 번호를 관리하는 방법은

이 웹 페이지를 살펴 보자.

+0

10 배, 나는 현재 어떤 알 수있는 방법을 수/A "SID"이 - 의미 -이 프로젝트는 숫자 55에 내가 원하는 경우 56에서 자동으로 시작 하시겠습니까? (또는 magor 버전 번호가 변경된 후 0부터 시작하십시오.) – Dani

+0

해당 필드에서 *를 사용하려고 시도했습니다. ide는이를 허용하지 않습니다. – Dani

+0

내가 정확하게 기억한다면, 처음 생성 된 숫자는 날짜 함수로 생성되고, 두 번째 숫자는 빌드 번호와 함께 생성됩니다. 그럼 1.0.4245.51002와 같은 번호를 받게 될 것입니다. – Matthieu

0

IIRC 솔루션 탐색기에서 "모든 파일 표시"를 클릭하십시오.이 파일은 해당 창의 맨 위에 세 번째 파일이라고 생각됩니다.

(두 번 클릭) "내 프로젝트"를 클릭하십시오.

다음으로, "Assemblyinfo.vb의"코드 편집기에서

을 더블 클릭하면 하단에 도달 할 때까지 아래로 스크롤합니다.

밖으로

코멘트

<Assembly: AssemblyVersion("1.*.0")> 

'저장'을 클릭하여

<Assembly: AssemblyVersion("1.0.0.0")> 

를 교체합니다.

그럼 끝났습니다!

+2

네,하지만 빌드 번호를 멋지게 앞서는 것은 아닙니다. 현재 시간과 날짜를 적어 놓았 기 때문에 빌드 번호가 1.0처럼 보입니다. 21643.23849 등등 .... –

+0

감사합니다. 메모를 작성하십시오. 한 번 언급 한 동료 중 한 명이 기억납니다. – CaRDiaK

0

하나의 유연한 옵션은 버전 번호 매기기 구성표가있는 T4 템플릿을 만들고 Visual Studio에서 생성하는 .cs 파일을 참조하는 것입니다. 이러한 템플릿의 예 :

< # @ template language = "C#"#> // //이 코드는 툴에 의해 생성 된 것입니다. 수동으로 변경 한 내용은 다음 번에이 코드를 다시 생성 할 때 // 이 손실됩니다. //

using System.Reflection;

[조립체 AssemblyVersion ("1.0.1 < # = this.RevisionNumber #>.")] [조립체 AssemblyFileVersion (". 1.0.1 < # = this.RevisionNumber #>")] < # + int RevisionNumber = (int) (DateTime.UtcNow - 새 DateTime (2010,1,1)).TotalDays; 이 예 개정 번호에서>

는 1 월 1 일, 2010 년 이후의 일 수를 설정하지만 일반 C 번호이기 때문에 당신은 사용자 지정 번호 체계를 제공 할 수 있습니다.

나는 자세한 내용은이 기술을 설명하는 blog post 썼다 :

+0

고마워요,이 기술을 이해하기 위해 블로그를 점검 할게요. – Dani

관련 문제