【发布时间】:2008-10-06 16:31:09
【问题描述】:
在我正在进行的一个项目中,我们在开发团队之间进行了持续的讨论 - 生产环境应该部署为 SVN 存储库的签出还是导出?
开发环境显然是一个结帐,因为它不断更新。 对于生产,我个人是检查主干,因为它使将来的更新更容易(只需运行 svn update)。然而,一些开发人员反对它,因为 svn 创建具有组/所有者和 svn 进程权限的文件(这是在 linux 操作系统上,所以这些事情很重要),并且在生产中也有 .svn 目录似乎它们有点脏。
另外,如果是结帐 - 如何在不包含开发中代码的情况下将单个功能推送到生产环境?您是否为每个功能使用标签或分支?有其他选择吗?
编辑:我可能不太清楚 - 要求之一是能够不断地将修复推送到生产环境。我们希望避免仅仅为了推送关键修复而进行完整构建(这比简单更新需要更长的时间)。
【问题讨论】:
-
您听起来好像正在远离分支和标记生产版本。为什么?
-
我已经编辑了我的问题以进一步解释
-
我想我不明白什么是“Critical Fix”,以及为什么它没有像完整构建那样受到同样的关注和尊重。或者它是否具有相同级别的 QA 并且您的构建需要很长时间?我不明白这个问题。
-
构建需要几分钟时间,而且我不希望每次我想将关键修复推送到生产环境时网站都会离线几分钟。我希望这能说清楚。
-
网站为什么会下线?您可以从 SVN 结帐到生产位置执行“构建然后移动”操作吗?如果是这样,这是否会消除尝试从主干管理生产版本的危险?
标签: svn deployment