比如要
实现dev分支根目录下的分支文件readme.txt,不合并到master分支上
实现dev的分支文件/common/src/main/resources/application.yml,不合并到master分支上
操作步骤如下:
1、根目录运行命令:
git config merge.ours.driver true //开启忽略文件配置
2、在dev分支上建立.gitattributes 文件并提交 内容如下:
readme.txt merge=ours
/common/src/main/resources/application.yml merge=ours
3、切换到master分支上merge
git checkout master
git merge dev
4、最关键点,如果是第一次操作/common/src/main/resources/application.yml则需要以下顺序:先修改dev分支的文件并提交,再修改master的文件并提交,然后merge,才能成功
因为.gitattributes首次识别时是由文件的更新时间来确定保留识别的,如果dev的某个文件的修改不想合并到master分支上的话,那么master的文件上的修改时间必须在dev的修改时间之后,否则忽略不成功。以后dev再对该文件的修改就不会合并到master上了。