我尝试使用 svn msbuild 社区任务?
<SvnCopy SourcePath="$(TrunkPath)" DestinationPath="$(TagPath)" Message="AutoBuild: create tag for build" />
但日志中有下一个错误:
Microsoft (R) Build Engine Version 4.0.30319.1
[Microsoft .NET Framework, Version 4.0.30319.237]
Copyright (C) Microsoft Corporation 2007. All rights reserved.
Build started 30.11.2011 13:16:37.
Project "d:\repository\FusionEnterprise\FusionWebServices\trunk\WebServicesSetu
p.msbuild" on node 1 (CreateSvnTag target(s)).
CreateSvnTag:
C:\Program Files (x86)\VisualSVN\bin\svn.exe copy "..\trunk" "..\tags\7.3.2.9
" --message "AutoBuild: create tag for build" --non-interactive --no-
auth-cache
svn: E205009: Local, non-commit operations do not take a log message or revis
ion properties
d:\repository\FusionEnterprise\FusionWebServices\trunk\WebServicesSetup.msbuild
(104,5): error MSB6006: "svn.exe" exited with code 1.
Done Building Project "d:\repository\FusionEnterprise\FusionWebServices\trunk\W
ebServicesSetup.msbuild" (CreateSvnTag target(s)) -- FAILED.
Build FAILED.
"d:\repository\FusionEnterprise\FusionWebServices\trunk\WebServicesSetup.msbuil
d" (CreateSvnTag target) (1) ->
(CreateSvnTag target) ->
d:\repository\FusionEnterprise\FusionWebServices\trunk\WebServicesSetup.msbui
ld(104,5): error MSB6006: "svn.exe" exited with code 1.
0 Warning(s)
1 Error(s)
Time Elapsed 00:00:00.20
使用了VisualSVN命令行应用。
但是当我在控制台中写入时:svn --version
, 得到下一个输出
svn, version 1.7.1-SlikSvn-1.7.1-X64 (SlikSvn/1.7.1) X64
compiled Oct 26 2011, 14:18:24
使用了SlikSvn命令行应用。
Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Common Files\Acronis\SnapAPI\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;c:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\SlikSvn\bin;C:\Program Files (x86)\VisualSVN\bin
我尝试使用下一个 msbuild 任务:
<SvnCopy SourcePath="$(TrunkPath)" DestinationPath="$(TagPath)" Message="AutoBuild: create tag for build" ToolPath="C:\Program Files\SlikSvn\bin\svn.exe" />
和
<SvnCopy SourcePath="$(TrunkPath)" DestinationPath="$(TagPath)" Message="AutoBuild: create tag for build" ToolPath="C:\Program Files\SlikSvn\bin" />
但它工作不正确。
我不明白如何为 msbuild 设置正确的 svn 应用程序,并且无法在谷歌中找到此信息。 有人能澄清一下吗?
添加:
如果使用任务 <SvnCopy SourcePath="$(TrunkPath)" DestinationPath="$(TagPath)" />
VisualSVN 工作正常。
最佳答案
您的 $(TagPath)
= "..\tags\7.3.2.9"
表示这是本地路径。这就是您的错误消息所说的:
svn: E205009: Local, non-commit operations do not take a log message or revision properties
这意味着对于不是提交操作的本地副本,日志消息是无用的。
如果你想在存储库中标记你的构建,你需要提供一个存储库路径作为你的 $(TagPath)
类似于 file:///C:/repositories/myapp/tags/7.3.2.9
或以 svn://...
或 http://....
开头的类似内容,具体取决于您的结帐。
关于svn - msbuild 社区任务和 svn,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8324538/