使用Mercurial跟踪5个文件中的小差异?

时间:2011-01-20 21:18:10

标签: python apache mercurial dvcs

我有五个httpd.conf文件,它们的区别仅在于它们正在侦听的端口号。站点之间的所有其他数据都是相同的。有没有办法在Mercurial中将其作为单个文件进行跟踪?因此,如果我对httpd.conf文件进行了不同的更改,我可以将其推送到所有五个,并保持端口号分开。

谢谢, 凯文

3 个答案:

答案 0 :(得分:6)

考虑在httpd.conf文件中使用include指令。然后你可以保持5个非常小,并将所有常见的东西保存在一个单独的文件中。

答案 1 :(得分:4)

为什么不将Include指令用于不同的单个部分?这只是一个愚蠢的,词汇“把文件放在这里”有点交易,所以应该根据你的需要。

另外,你可以这样做:

Listen ${LISTEN}
在配置文件中

并将该值作为env var。

传递

http://httpd.apache.org/docs/2.2/configuring.html#syntax

答案 2 :(得分:1)

我认为你不能;这在VCS中并不常见。如果我错了,我很高兴得到纠正。

也许您可以将“master”httpd.conf文件作为模板,并拥有一个生成所需五个文件的构建脚本,并为每个文件传入适当的端口号。这样你就可以隔离文件中的变化点,并保持公共位,这很常见。那里有大量的模板语言。或者您只需使用sed即可。或者像nmichaels建议的那样直接使用Apache的功能。

有很多方法可以为这只特殊的猫提供皮肤,但我认为Mercurial不会直接帮助你。

相关问题