我使用Git来跟踪我写在不同的机器使用Kile的一个大型的LaTeX文档。
Kile的写入其.kilepr
关闭Kile的时候配置文件。 我经常碰到的问题是,我关闭Kile的前提交。 因此,我承诺和推动工作的另一台机器上,当我回来,想拉我收到了合并冲突,因为.kilepr
文件中包含的光标位置(这显然现在已经改变)。
我的问题:有没有办法添加一个合并规则混帐配置特定文件(始终使用--theirs)? 使用.gitignore
是不是因为一个选项.kilepr
文件中包含的重要信息,如在项目文件。
所有可能的方法来模拟合并-s他们在“中列出的git命令制作一个分支就像另一个 ”。
但对于一个文件,你需要的是一个合并的驱动程序,在宣布.gitattributes
文件,具有keepTheir
脚本,如:
mv -f $3 $2
exit 0
请参阅“ ‘ git merge -s theirs
’需要-但我知道它不存在 ”自定义的一个具体的例子合并驱动程序(包括我自己的版本 )。
2018解决方案:合并驱动程序
在混帐配置,你可以添加自定义合并驱动程序:
[merge "my-custom-driver"]
name = A custom merge driver used to resolve conflicts in certain files
driver = my-merge-tool.sh %O %A %B
但你也可以只返回“真”的,这将始终保持局部变化的驱动程序:
[merge "keep-local-changes"]
name = A custom merge driver which always keeps the local changes
driver = true
然后在.gitattributes您可以定义文件类型使用的自定义合并驱动程序:
/folder/**/*.fileExtension merge=keep-local-changes