我想使用外部diff工具在提交文件和本地文件之间运行一个diff,而我的本地文件没有临时文件。我正在Windows上运行git。
我目前正在尝试使用:git difftool --dir-diff <commit> -- <path_to_local_dir>。这种方法工作得很好,但是<path_to_local>由临时文件夹在AppData中表示。对于大多数用途来说,这是很好的。
但是,使用外部diff工具(在我的例子中是BeyondCompare4),diff工具提供了将特定更改从<commit>“复制”到<path_to_local>的功能。这就是我的问题所在。如果Git强制对本地文件使用临时文件夹,则“复制”行为是无用的,因为它只是在修改临时文件。
我知道我可以编写一个脚本,在保存后将临时的内容复制到本地文件,但我正在寻找一个更优雅的解决方案。
作为sidenote,Mercurial默认支持请求的行为(只在本地文件不存在时创建临时文件)
简单地说,是否有一种方法可以强迫git difftool 实际使用本地文件,而不是为已经存在的本地文件创建和使用临时文件?
编辑:用词
https://stackoverflow.com/questions/59738075
复制相似问题