目录
[3.1 配置位置:Diff Viewer,不是 Merge Tool!](#3.1 配置位置:Diff Viewer,不是 Merge Tool!)
[3.2 注意区分两个 External 选项](#3.2 注意区分两个 External 选项)
[3.3 关于 /leftreadonly 参数(影响能否双向拷贝)](#3.3 关于 /leftreadonly 参数(影响能否双向拷贝))
一、背景
TortoiseSVN 自带的 TortoiseMerge 不支持文件夹对比,对比两个文件夹时会报错:
xxx is a directory, not a file! TortoiseMerge can't diff directories.
解决方法:换成 Beyond Compare(支持文件和文件夹对比)。
二、配置步骤
-
右键 → TortoiseSVN → Settings → Diff Viewer(见第3.1点)
-
选择 External( 见第3.2点)
-
粘贴以下内容:
text
"C:\Program Files\Beyond Compare 4\BCompare.exe" %base %mine /title1=%bname /title2=%yname /leftreadonly
我是安装在D盘,所以我的配置参数如下,我是把/leftreadonly去掉了(见第3.3点):
D:\Program Files\Beyond Compare 4\BCompare.exe %base %mine /title1=%bname /title2=%yname

- 点击应用 → 确定 → 重启电脑(我是没有重启也可以使用)
三、核心注意事项
3.1 配置位置:Diff Viewer,不是 Merge Tool!
TortoiseSVN 设置中有两个相似选项:
| 选项 | 作用 |
|---|---|
| Diff Viewer | 对比文件/文件夹差异(右键 → Diff)✅ 选这个 |
| Merge Tool | 解决代码冲突 ❌ 不要选 |
选错了配置不会生效。
3.2 注意区分两个 External 选项
设置界面上有两个 External:
| 位置 | 作用 |
|---|---|
| 第一个 External | 文件/文件夹对比 ✅ 选这个 |
| 第二个 External | SVN 属性对比 ❌ 不要选 |
选错了配了也白配。
3.3 关于 /leftreadonly 参数(影响能否双向拷贝)
上面配置命令中带了 /leftreadonly 参数,它的作用是:将左侧窗口设为只读。
-
有
/leftreadonly:左边只能看,不能改,只能从左边往右边拷贝 -
去掉
/leftreadonly:左右两边都可以编辑,双向自由拷贝
如果你希望右键 DIFF 时两边都能修改,请删除 /leftreadonly。
一句话总结:Diff Viewer → 第一个 External → 路径加引号 → 参数写全 → 根据需求决定是否加 /leftreadonly → 重启电脑