3

我尝试使用 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 命令行应用程序。

但是当我在 console: 中写入时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 应用程序,并且在 google 中找不到此信息。有人可以澄清这一点吗?

补充:如果使用任务<SvnCopy SourcePath="$(TrunkPath)" DestinationPath="$(TagPath)" />VisualSVN 工作正常。

4

1 回答 1

3

你的$(TagPath)="..\tags\7.3.2.9"表示这是一个本地路径。这就是您的错误消息所说的:

svn:E205009:本地、非提交操作不采用日志消息或修订属性

这意味着对于不是提交操作的本地副本,日志消息是无用的。

如果您想在存储库中标记您的构建,您需要提供一个存储库路径作为您的$(TagPath)类似file:///C:/repositories/myapp/tags/7.3.2.9或类似的东西,从svn://...http://....取决于您的结帐开始。

于 2011-12-23T16:32:15.510 回答