gpt4 book ai didi

git - 分支 : different config files for release/development

转载 作者:IT王子 更新时间:2023-10-29 01:01:47 25 4
gpt4 key购买 nike

我继承了一个项目,我们正在使用 git。我们有许多环境(开发、测试、生产)。以前的团队基本上是在每个实例上重新创建所有内容,使用相同的帐户、密码、sid 等。唯一改变的是/etc/hosts 中的主机名映射。这样它将连接到不同的数据库服务器。

现在,这会产生一个问题,因为我不能,例如复制一个架构,以便开发人员可以使用与主开发服务器相同的数据库实例来运行实验。我基本上必须在另一台主机上创建一个新的数据库实例,并更改/etc/hosts 以指向该新服务器。

虽然目前这是一个有效的设置,但我正在尝试找到一种方法来为每个实例维护不同的配置文件。即:不同版本的 applicationConfig.xml 取决于分支。我猜有人可能会争辩说,将数据库凭据保留在 repo 协议(protocol)中并不是一个好主意,但让我们暂时忽略它。

另一种可能需要使用不同版本文件的情况是调试。假设我正在使用 javascript 记录器框架,并且我添加了我不想随生产版本发布的调试代码。我不想在开发/测试时添加记录器的东西,然后在发布之前再次删除它。人们可能会忘记这样做。

处理不同分支文件的不同“版本”的正确方法是什么?有没有办法让分支与 master 上的最新代码保持同步,但更改了一些配置/代码文件?我不希望它自动保持同步,但我希望能够不 merge 配置文件(或其中的一部分),同时不完全忽略它们(?)。例如:不要 merge 第 6,7 行(数据库用户名和密码),但要 merge 对文件的其他更改。

最佳答案

听起来您应该仔细阅读 git 属性。 Check out the section at the bottom of this page

This is helpful if a branch in your project has diverged or is specialized, but you want to be able to merge changes back in from it, and you want to ignore certain files. Say you have a database settings file called database.xml that is different in two branches, and you want to merge in your other branch without messing up the database file.

关于git - 分支 : different config files for release/development,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9636492/

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