问题描述
|
我目前正在一个受
mercurial
控制的项目中,我一直希望在更新时能够钩住.htaccess
填充,以避免更改APPLICATION_ENV
以适应应用程序应运行/加载配置/连接到的“模式”。数据库。
我的存储库结构如下:
Main dev repo (ENV : development)
+-- Stable repo (Production version) (ENV : production)
+-- Local dev repo (working version) (ENV : development)
+-- Prototype repo (prototyping repo) (ENV : prototype)
我要编辑的ѭ1的部分如下(文件的第一行):
# Application var
SetEnv APPLICATION_ENV development
我不介意运行python
脚本(或任何其他语言),我正在寻找合适的钩子来放入.hg\\hgrc
文件
解决方法
这不是正确的选择,因为那样会更改实际文件。您进行的下一次提交实际上会将更改提交到存储库。
相反,建议的方法是执行以下操作:
制作一个模板文件,并将其提交到您的存储库,即。
.htaccess.template
在.hgignore
文件中添加实际文件.htaccess
,以使Mercurial避免使用它
在本地,从模板文件复制到实际文件,然后进行编辑
这样可以确保对实际文件的更改(无论可能如何)都不会提交到您的存储库。
一些配置系统还支持条件包含,因此您可以使用诸如“ 11”之类的东西,然后改为执行以下操作:
将实际文件提交到存储库,但使其成为准系统,包含默认值
以这样的包含语句结束文件
将您要包含的文件名添加到.hgignore
文件中,这样就不会将此类文件提交到存储库中
这样可以确保任何人都可以通过添加自己将包含的文件版本来添加或覆盖默认配置。