1

我在 Windows 上使用 Beyond Compare 4 (beta) 作为 git 中的 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 创建的文件的临时副本以显示差异(并且在我关闭 BC 窗口后将被删除)。

但是,在进行单个文件比较时,如下所示:

git difftool develop path/to/some/file.something

差异的“右侧”显示文件的实际本地版本,可以编辑。

有什么方法可以告诉 git 在某些东西和本地版本之间进行 dir-diff 时,打开实际的本地文件而不是创建临时副本?

我的目标是能够从 BC dir-diff 内部编辑和保存文件。

4

0 回答 0