当我做一个合并冲突解决与Kdiff3(和其他合并工具我尝试),我注意到决议a *。创建Orig文件。有没有办法让它不创建额外的文件?
当前回答
git配置中的一个可能的解决方案:
git config --global mergetool.keepBackup false
执行合并后,带有冲突标记的原始文件可以保存为扩展名为. trans的文件。 如果这个变量被设置为false,那么这个文件就不会被保存。 默认为true(即保留备份文件)。
另一种选择是不添加或忽略这些文件,正如本文所建议的那样,
Git mergetool用“”保存文件的合并冲突版本。源自”后缀。 确保在添加和提交merge或add *之前删除它。来自你的。gitignore。
Berik在评论中建议使用:
find . -name \*.orig
find . -name \*.orig -delete
Charles Bailey在他的回答中建议,无论git设置是什么,都要注意内部差异工具设置,它也可以生成这些备份文件。
kdiff3有自己的设置(请参阅手册中的“目录合并”)。 其他工具,如WinMerge,可以有自己的备份文件扩展名(WinMerge: .bak,如其手册所述)。
所以你也需要重新设置这些设置。
其他回答
git config --global mergetool.keepBackup false
这应该也适用于Beyond Compare(作为mergetool)
你必须小心使用kdiff3,因为git mergetool可以配置为在合并过程中保存一个.orig文件,kdiff3的默认行为是独立于git mergetool保存一个.orig备份文件。
你必须确保mergetool备份是关闭的:
git config --global mergetool.keepBackup false
另外,kdiff3的设置设置为不创建备份:
Configure/Options => Directory Merge => Backup Files (*.orig)
窗口:
在File Win/Users/HOME/。gitconfig set mergetool.keepTemporaries=false 在文件git/libexec/git-core/git-mergetool中,在函数cleanup_temp_files()中添加rm -rf——"$MERGED. "else块中的“origin”。
git配置中的一个可能的解决方案:
git config --global mergetool.keepBackup false
执行合并后,带有冲突标记的原始文件可以保存为扩展名为. trans的文件。 如果这个变量被设置为false,那么这个文件就不会被保存。 默认为true(即保留备份文件)。
另一种选择是不添加或忽略这些文件,正如本文所建议的那样,
Git mergetool用“”保存文件的合并冲突版本。源自”后缀。 确保在添加和提交merge或add *之前删除它。来自你的。gitignore。
Berik在评论中建议使用:
find . -name \*.orig
find . -name \*.orig -delete
Charles Bailey在他的回答中建议,无论git设置是什么,都要注意内部差异工具设置,它也可以生成这些备份文件。
kdiff3有自己的设置(请参阅手册中的“目录合并”)。 其他工具,如WinMerge,可以有自己的备份文件扩展名(WinMerge: .bak,如其手册所述)。
所以你也需要重新设置这些设置。
或者只是加上
* .orig
致你的全球gitignore
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式
- git pull -rebase和git pull -ff-only之间的区别