我在Windows上的git中使用Beyond Compare 4(beta)作为difftool。
以下是设置:
[diff]
tool = bc4
[difftool]
prompt = false
[difftool "bc4"]
cmd = \"C:/Program Files (x86)/Beyond Compare 4/BComp.exe\" "$LOCAL" "$REMOTE"
[merge]
tool = bc4
[mergetool]
prompt = false
[mergetool "bc4"]
#trustExitCode = true
cmd = \"C:/Program Files (x86)/Beyond Compare 4/BComp.exe\" "$LOCAL" "$REMOTE" "$BASE" "$MERGED"
我正在使用此命令将当前本地更改(包括未提交/未提交的更改)与分支的起点(它从develop
分支分开)进行区分
git difftool $(git merge-base develop HEAD) --dir-diff
这将打开包含所有已更改文件的目录差异。当我双击文件时,它会在新选项卡中打开文件差异。
我希望能够编辑"右侧"文件是当前的本地版本。问题是显示的实际文件是git为Beyond Compare创建的文件的临时副本以显示diff(并且在关闭BC窗口后将被删除)。
但是,在执行单个文件diff时,如下所示:
git difftool develop path/to/some/file.something
"右侧" diff的显示文件的实际本地版本,可以编辑。
有没有办法告诉git在做某事和本地版本之间的dir-diff时,打开实际的本地文件而不是创建临时副本?
我的目标是能够在BC dir-diff中编辑和保存文件。