如何在SVN中存储配置参数?

时间:2020-03-06 14:53:00  来源:igfitidea点击:

像许多项目一样,我们部署到许多环境,QA,UA,开发人员主干等。

在SVN中存储敏感配置参数的最佳方法是什么?或者,是否应该只在服务器上维护一个较小的未版本化文件并带有凭据?

主要是,我们不想向每个开发人员公开生产凭证。

解决方案

我根本不会在存储库中存储配置信息。这样,我们不必担心SVN在更新源时尝试更新配置。

我会同意亚当的。如果它不能使每个从事该项目的人都受益,那么它就不应受到版本控制。如果有人签出代码副本,个人项目文件会为他们提供帮助吗?可能不是。这很可能只会使事情变得混乱。

我宁愿提供配置示例,也不愿提供真实的配置文件。在我的项目中,根目录中有setup.default.php文件,每个用户都需要将其复制为setup.php并进行修改以匹配本地环境。另外,为防止签回自定义的安装文件,.svnignore中有一条规则。

$ echo 'setup.php' > .svnignore
$ svn propset svn:ignore -F .svnignore .

这也是我遇到的一个问题。我认为答案是检入模板(例如setup.php.default中的模板),然后使用Phing等自动化工具推动开发。如果我们在setup.php文件中使用可识别的令牌,则Phing将能够用​​单独的服务器值替换这些令牌。此外,简单的一步上线直播将是一个有用的过程。