git .BACKUP .BASE .LOCAL .REMOTE文件

时间:2012-12-26 18:42:57

标签: git file merge git-merge

我们正在为这个项目安装git,我正和另一位同事一起玩。

我一直在解决一些精心设计的合并冲突,但我最终得到了一堆我不想要的额外文件。它们是.BACKUP .BASE,.LOCAL和.REMOTE文件。基于这些名称,它们似乎来自解决我的合并。我得到的一些确切的文件名是:

  • index.shtml.BACKUP.16908.shtml
  • index.shtml.BASE.16908.shtml
  • index.shtml.LOCAL.16908.shtml
  • index.shtml.REMOTE.16908.shtml
  • 我还有另一组上面的文件,但以.21384结尾,假设是从另一次合并尝试

是否可以不保存这些文件?你可以想象,现在有9个版本的index.shtml有点烦人。我正在使用git的内置合并工具tortoisemerge。

我通过运行git log遇到了类似的东西,它显然创建了一个“df”文件。只需将其包含在.gitignore文件中即可轻松处理。不过,我不想在整个项目中累积上面的文件。

3 个答案:

答案 0 :(得分:14)

正如另一个答案所提到的,这些文件似乎是在解决冲突时由Git的合并工具创建的。即使在冲突解决后,默认的Git设置也会留下这些额外的文件,但是当前版本的Git允许您设置config variable以使Git在完成合并后始终删除这些临时文件。

您可以使用命令...

在Git Bash中执行此操作
git config --global mergetool.keepBackup false

当然,--global参数是可选的,并控制此设置对于此用户(全局)还是当前存储库是本地的。

更多信息here。向下滚动到底部的TEMPORARY FILES部分。

编辑:即使启用了此设置,如果您在通过硬重置中止尝试修复的MERGE期间,repo最终处于未解析状态,这些文件也会累积并持续存在。< / p>

例如,在我使用Qt Creator 4.7.x的某些配置时,我多次发生这种情况,直到我意识到我的机器上发生了什么并正确配置了Git&#39; mergetool

注意 :我有一个类似的问题,最后来到这里。虽然目前的答案最终导致我找到了正确的解决方案,但我并没有觉得它回答了问题并且更新了答案。

答案 1 :(得分:2)

在Tortoise中,转到设置和取消选中“备份原始文件”(一次性操作) 下次打开它时你可以定期合并,Tortoise会创建.base,.backup,.local,.remote,但是当你保存合并时,Tortoise会自动删除这些文件。

答案 2 :(得分:-1)

要删除未跟踪的文件和目录,请输入:

git clean -df