`git mergetool`,生成了 `fileName.~fileType` 文件

`git mergetool`, A `fileName.~fileType` file was produced

MAC 生成了一个 README.~md 文件 当我解决了 git 冲突后,使用带有 Beyond Compare 的命令 git mergetool。 我想有两种方法可以解决这个问题,但我不知道哪种方法最好。

  1. 如何避免生成 .~ 文件?
  2. 我将*.~**添加到.gitignore,稍后删除*.~**文件。

我发现 README.~md 显示了此冲突的详细信息。包含未解决的冲突内容。

可能最好的选择是将这些文件模式添加到 .gitignore 文件中(你永远不知道这个文件将来什么时候有用)。

如果你想自动删除这些文件,你可以创建一个 hook 当它们不再有用时删除它们(例如在执行提交后),这样的事情应该可以解决问题:

#!/usr/bin/env python

import os, re


print("Deleting all '*.~*' files in working directory")
auxfile_pattern = re.compile('.+\.~\w+$')
for root, dirs, files in os.walk('.'):
    for filename in files:
        if auxfile_pattern.search(filename):
            os.unlink(os.path.join(root, filename))

Beyond Compare 将 Backups 所有备份设置为禁用。顺便说一句,Beyond Compare是个好工具。