git merge 时忽略配置文件文件

日常开发时经常会遇到某些配置文件,不希望在branch merge时被包含在内。

怎么处理?步骤如下:

步骤一:定义一个虚拟的合并策略,全局配置不依赖任何项目任何分支

git config --global merge.ours.driver true

步骤二:在你项目中根目录(与.gitignore同级)添加一个配置文件.gitattributes

注意这个".gitattributes"在必须要放到merge的目标branch中,而不是源branch。

步骤三:在.gitattributes中添加你要忽略合并的文件(夹)

dist/**/* merge=ours
some.config.js merge=ours

步骤四:切换其他分支,修改一下涉及到忽略的文件。切回有".gitattributes"的分支,merge验证。

参考文献:运用git的合并策略忽略文件merge - SegmentFault 思否

我个人试下来,在sourcetree中这样做不能生效。。。

我建议还是通过专门的feature branch绕开配置文件的问题。对于每次功能开发feature branch中只包含代码,不包含配置文件。

配置文件只包含在主要的DEV, UAT和Release branch中

posted @ 2022-05-15 14:42  爱知菜  阅读(349)  评论(0编辑  收藏  举报