【发布时间】:2012-05-02 18:59:11
【问题描述】:
我正在运行 Visual Studio 2010、VisualSVN 和 TortoiseSVN。
每次我使用 webdeploy 部署网站时,我都希望它能够将我的所有文件提交到 SVN。完成此任务的最佳方法是什么?
【问题讨论】:
标签: visual-studio-2010 svn visualsvn
我正在运行 Visual Studio 2010、VisualSVN 和 TortoiseSVN。
每次我使用 webdeploy 部署网站时,我都希望它能够将我的所有文件提交到 SVN。完成此任务的最佳方法是什么?
【问题讨论】:
标签: visual-studio-2010 svn visualsvn
当您点击发布按钮时,Visual Studio 会进行构建。您可以在 VS2010 中创建构建配置,在构建成功后执行命令。您应该安装命令行 SVN 客户端并使用它来执行提交。从 Build Configuration 调用 SVN 命令行客户端。
更常见的方法是将更改提交到版本控制系统,而不是使用 WebDeploy。然后让构建服务器从版本控制中获取源并将更改合并到服务器中。 CruiseControl.NET 是一个很好的工具。
【讨论】:
您应该调查https://github.com/loresoft/msbuildtasks,它一旦安装并集成到您的项目文件中,就会为创建自定义 msbuild 操作提供支持。
安装后,您可以创建“SvnCommit”操作并将其与项目文件中的 beforebuild 或 afterbuild 目标相关联。
【讨论】:
这可能不是您正在寻找的答案 - 但我认为您无法立即获得此答案。我建议你创建一个 Visual Studio 插件并将其与SharpSVN(subversion 客户端 API)集成以实现你想要的。
更新:
正如@maddoxej 所提到的,构建后操作也可能会起作用。但是,我发现很容易错过选择的配置 - 然后按 F5。而且一不小心就投身SVN一般也不是什么好事。
我想到的另一个选项可能是 VS 宏。只需记录一个单击部署然后提交到 SVN 的宏。
【讨论】:
建议将签入作为构建操作的答案略有缺陷,因为发布过程可能会在发布过程中增加已发布的内部版本号。这将修改需要签入的源代码。
【讨论】: