【问题标题】:Using Subversion Tags to Deploy to Development/Staging/Testing Server使用 Subversion 标签部署到开发/登台/测试服务器
【发布时间】:2011-01-12 00:08:30
【问题描述】:

Subversion 标签是发布到开发或登台服务器的好方法吗?

这是我的设想。

当主干变得稳定时,会使用该构建创建一个标签。开发服务器使用 Subversion 切换到该标签,更新到文件的最新版本,删除不再需要的文件等。我设想的服务器帐户也只有对存储库的只读访问权限。

这有意义吗?我正在考虑一种可以消除手动手动复制文件到开发/登台/测试服务器的方法。

注意:我没有使用构建服务器,所以我不需要任何挂钩。另外,这是一个 Windows 盒子。

【问题讨论】:

    标签: svn workflow


    【解决方案1】:

    Subversion 不像 CVS 那样有真正的标签 (http://svnbook.red-bean.com/en/1.1/ch04s06.html)。但是,您可以使用真正创建分支的 'svn copy' 进行标记。尽管如此,最佳实践是从版本控制系统实时发布(部署)。您可以使用诸如自动部署http://imrannazar.com/Automated-Deployment-with-Subversion 之类的东西非常喜欢。

    我建议您先在其他地方对代码进行干净的检查,然后再进行发布。这样,您将确保一切正常并且一切都已签入。

    我的另一个建议是使用“svn export”而不是结帐。这样它就删除了所有 .svn 目录和其他不需要的东西。

    【讨论】:

    • SVN 没有“真实标签”是什么意思?我以前听过这个,但还没有听到它为它辩护。
    • @Jacob - SVN 没有像其他系统一样的不可变标签或标签。在其他系统中,您可以为分支上的特定修订分配名称,但在 svn 中,您所能做的就是将主干或分支复制到 /tags 目录中。 “标签”只是一个标签,因为它位于 /tags 目录中 - 它仍然可以更新,就像一个分支。
    【解决方案2】:

    当然,这是个好主意。查看Capistrano,它是一种流行的部署工具,基本上可以完成您所描述的工作。它主要用于 Ruby on Rails,但也可以在其他环境中使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-22
      • 1970-01-01
      • 2019-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-14
      相关资源
      最近更新 更多