gpt4 book ai didi

svn - 如何使用 subversion 管理生产/测试/开发配置信息?

转载 作者:行者123 更新时间:2023-12-04 07:07:06 25 4
gpt4 key购买 nike

我正在开发一个组合的 Web/客户端应用程序,该应用程序具有用于生产、测试​​和开发的分支。我正在使用 svn post commit hooks 将更新部署到生产和测试服务器。客户端应用程序需要根据生产、测试​​或开发指向不同的 url。我如何使用颠覆来管理这个?我想到的选项是:

选项 1
保留一个包含分支特定详细信息的文件,该文件永远不会在分支之间合并。

从构建管理的角度来看,此选项更容易,但容易出错,因为我必须记住每次执行合并时都忽略该更改。

选项 2
无论是哪个分支,都可以创建客户端的生产、测试​​和开发版本,并依靠 svn Hook 来拉取正确的二进制文件。

你怎么处理这个?有更好的想法吗?

最佳答案

我们的应用程序为每个部署的环境保留一个单独的目录,其中包含配置文件。当构建服务器运行任务以针对特定环境进行部署时,它知道从哪个目录中提取配置文件。指向正确目录的指针是构建服务器(在我们的例子中是 Pulse)的构建定义的一部分。为那个 Pulse 任务构建代码的分支也是任务规范的一部分。这使得部署服务器决策独立于分支,因此当我们发布新版本时,服务器和数据库可以重新调整用途。

+ dev-server
+---jdbc.properties
+---build.properties
+ test-server
+----jdbc.properties
+---build.properties

配置文件不与应用程序的其余部分(主干、分支等的同级)分支。它们在 svn 树中有自己的位置,并以 Subversion external definition 的形式被拉入每个分支。 .

我们这样做是因为每个分支都可能部署了许多服务器(开发、测试、构建、自动化等)。

关于svn - 如何使用 subversion 管理生产/测试/开发配置信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/971995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com