【问题标题】:Could not set the svn commit message in ccnet无法在 ccnet 中设置 svn 提交消息
【发布时间】:2011-09-07 17:48:42
【问题描述】:

在所有 msbuild 任务成功完成后,我创建了一个 CCNET 任务来提交安装项目中的更改。

<exec executable="svn.exe">
   <description>Commit changes in the setup project file to SVN</description>
   <buildArgs>commit -m "Commmit project file after build %CCNetLabel%" -F Setup.vdproj --no-auth-cache --non-interactive --force-log</buildArgs>
</exec>

我已尝试在命令提示符下执行此命令,它按预期工作。但是,当我将exec任务放到CCNET中时,SVN中记录的消息与我预期的完全不同。我不断得到类似的东西

"DeployProject"
{
"VSVersion" = "3:800"
"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}"
"IsWebType" = "8:FALSE"
"SccLocalPath" = "8:Svn"
"SccAuxPath" = "8:Svn"
"SccProvider" = "8:SubversionScc"
......

我不知道 SVN exec 任务在哪里收到此消息。其他人以前遇到过这个吗?你如何设置正确的消息?请指教。

【问题讨论】:

  • 作为一般规则,您不应将构建工件(即构建生成的任何内容)提交到存储库。
  • 是的,但我们需要跟踪为安装项目 (msi) 生成的最新版本号 :(
  • 标准 CruiseControl.net 解决方案是使用 tagOnSuccess
  • 我们决定删除 exec 任务。谢谢你的提示! =)

标签: svn cruisecontrol.net commit-message


【解决方案1】:
  • svn.exe 在路径中吗?会不会是你在不同用户环境的服务模式下运行?
  • 您是否正确设置了工作目录(您从哪里提交)?

【讨论】:

  • > svn.exe 在路径中吗?可能是您在具有不同用户环境的服务模式下运行吗?是>您是否正确设置了工作目录(您从哪里提交)?我也尝试过,但得到了相同的结果。
  • > 会不会是你在不同用户环境的服务模式下运行?我正在运行 Cruise Control 服务并使用我们构建环境的管理员用户的凭据设置登录属性。会不会和这个问题有关?
  • 尝试在所需用户下从命令行运行 ccnet,只是为了消除这种可能的原因。
  • 另外,尝试在exec标签中使用完整路径,看看是否是这个问题
【解决方案2】:

改用tagOnSuccess,这是受支持的 CruiseControl.Net 解决方案,用于在 svn 中跟踪用于生成每个包的版本。

【讨论】:

    猜你喜欢
    • 2014-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-13
    • 1970-01-01
    • 2019-02-14
    • 2019-08-20
    • 2011-06-10
    相关资源
    最近更新 更多