我有两个分支:一个用于开发,另一个用于生产, 每个app.config文件中都有自己的配置值
我想要的是在合并或重新设置这些分支的基础时忽略这些值。
答案 0 :(得分:2)
那么您最好的选择是什至不对app.config进行版本化
确实如此,但是您仍然可以使用 content filter driver 使用.gitattributes
declaration 生成。
您要版本的是一个模板文件,以及一个文件,其中包含每个环境(每个分支)的所有可能值。
(来自“ Customizing Git - Git Attributes”的图像,来自“ Pro Git book”的图像)
生成的实际文件仍然被.gitignore
忽略:您的实际工作树不会“脏”。
smudge
脚本:
smudge
期间应用git checkout
脚本的模板,选择正确的值文件并生成正确的文件。这样,您可以根据需要修改config.<branch>
值文件:将从这些值生成配置文件(未版本化)。
而且不会有任何合并问题。