git合并分支时忽略某个文件遇到的坑

比如要实现test的分支文件/common/src/main/resources/application.yml,不合并到master分支上

操作步骤如下:

1、根目录运行命令:

git config merge.ours.driver true    //开启忽略文件配置

2、在test分支上建立.gitattributes 文件并提交 内容如下:

/common/src/main/resources/application.yml merge=ours

3、复制.gitattributes的内容到master分支上保存提交

4、切换到master分支上merge

git checkout master
git merge test

5、最关键点,如果是第一次操作/common/src/main/resources/application.yml则需要以下顺序:先修改test分支的文件并提交,再修改master的文件并提交,然后merge,才能成功

因为.gitattributes首次识别时是由文件的更新时间来确定保留识别的,如果test的某个文件的修改不想合并到master分支上的话,那么master的文件上的修改时间必须在test的修改时间之后,否则忽略不成功。以后test再对该文件的修改就不会合并到master上了。

你可能感兴趣的:(版本管理工具)