2013-01-10 6 views
0

make 프로젝트를 SVN 수정 번호로 표시하려고합니다.SVNVersion.exe가 버전없는 디렉토리를 반환하는 이유

AssemblyVersionFile 세부 정보를 업데이트하기 위해 MsBuildTask를 사용하고 있습니다.

나는 정보를 얻기 위해 다음 BuildScript를 사용하고 있지만, 이것은 반환 -1 SVNVersion.exe이 버전없는 디렉토리를 반환으로, 어떻게 당신은 를 업데이트하지 않아야합니다 SVNVersion.exe

<Target Name="BeforeBuild"> 
    <SvnVersion LocalPath="$(MSBuildProjectDirectory)" ToolPath="$(ProgramFiles)\TortoiseSVN\bin"> 

    <Output TaskParameter="Revision" PropertyName="Revision" /> 

    </SvnVersion> 


    <FileUpdate Files="Properties\AssemblyInfo.cs" 
    Regex="(\d+)\.(\d+)\.(\d+)\.(\d+)" 
    ReplacementText="$1.$2.$3.$(Revision)" /> 

</Target> 

답변

0

업데이트합니까 svnversion (이유는 당신이 업데이 트가 해결책이라고 생각하는), 결과를 얻기 위해, svnversion을 실행하기위한 올바른 ** 작동 문자열 **을 얻습니다.

읽기 svnversion --help, 명령 줄

svnversion [OPTIONS] [WC_PATH [TRAIL_URL]]

및 발언의 참고 형식

WC_PATH이 버전없는 경로, 프로그램을 출력 '버전없는 디렉토리'또는 '버전없는 파일'인 경우 .

즉 - 확인 당신이 svnversion의 이전 버전을 사용하고 있기 때문에 이것은 디렉토리하지 이상한 비 WC 위치

0

를 버전하여 필요에 작업에 대한 명령 줄을 구축 할 수 있습니다.

명령 줄 프롬프트를 열고 svnversion 디렉터리로 이동하여 MSBuild와 동일한 작업을 수행하십시오.

CMD :

 
cd C:\ProgramFiles\TortoiseSVN\bin 
[ENTER] 
svnversion C:\VisualStudio\Projects\YourDirectory 
[ENTER] 

SVNVERSION should answer why its not working, in my case was by E155021: This client is too old to work with thew working copy at... 
+0

가'TortioseSVN 분포의 일부를 svnversion'? 내'/ bin' 폴더에서 찾을 수 없습니다. – ysap

+0

예, 그것은 @ysap –

+1

예입니다. 이것은 초기에 설치하지 않은 명령 행 도구 패키지의 일부였습니다. 설치 프로그램을 다시 실행하고 설치를 업데이트해야했습니다. – ysap

관련 문제