到目前为止,我使用emacs ediff模式进行合并。我试过meld,但找不到一种方法来使一个缓冲区/文件只读。我从不在两个方向上合并,这是我在合并之前只读一部分的方式。
答案 0 :(得分:0)
meld features page上的“合并模式(开发中)”部分称为“锁定”,该功能似乎尚未发布,此外还不清楚是否可以在外部使用合并模式。 (状态为2020-08)
您可以做的是使您不想更改的文件(临时)为只读。 这将为您提供一个锁定图标,并在文件名旁边显示一个灰色的“在此窗格中保存文件”图标,您将无法在该窗格中编辑文件。
答案 1 :(得分:-1)
[merge]
tool = mymeld
[mergetool "mymeld"]
cmd = meld --diff $BASE $LOCAL --diff $BASE $REMOTE --diff $LOCAL $MERGED $REMOTE
这就是我所说的与标签的传统双向合并。现在,因为我 已经注意到Meld支持三路合并,还有另一个 选项。设置“diff3”git冲突样式时,Meld打印“(??)” 显示BASE内容的行。在这种模式下,LOCAL和REMOTE 文件只读,这也很方便。