WinSCP + Tortoise SVN/Merge - compare/diff 本地和远程文件

WinSCP + Tortoise SVN/Merge - compare/diff local and remote files

使用 WinSCP 时,我们可以定义自定义命令来执行任务,例如比较文件内容。

内置的是:

cmd /c fc "^!^" "!" | more && pause

使用 Windows fc(文件比较)实用程序。

现在用TortoiseSVN的TortoiseMerge比较文件内容,完美。我认为它是 Windows 中最好的免费文本比较软件,它允许我们在启动时指定要比较的文件。实际上,我在我的 git-bash 配置文件中使用这一行来使用 TortoiseMerge 来执行 git diff:difftool.tortoisediff.cmd="C:\some\path\TortoiseSVN\bin\TortoiseMerge.exe" -mine $REMOTE -base $LOCAL.

那么,我可以将 WinSCP 与 TortoiseMerge 结合使用以启用并行版本吗?我认为启用该功能后,WinSCP 可以击败 Beyond Compare,后者已获得许可但并非免费。

经过一段时间的反复试验,我找到了正确的语法。

远程上传代码:

C:\some\random\path\to\TortoiseSVN\bin\TortoiseMerge.exe -base "!^!" -mine "!"

下载代码到本地:

C:\some\random\path\to\TortoiseSVN\bin\TortoiseMerge.exe -mine "!^!" -base "!"

"!^!"代表本地文件,"!"代表远程文件。

记得在TortoiseMerge中我们定义的左边是"base",我们只能从左边复制代码到右边,所以上传和下载时,我们将本地文件和远程文件的位置颠倒.

要使用这些命令,我​​们打开"File" - "File Custom Commands" - "Customize..","New"一个命令,"Save"。最后,我们激活命令工具栏以在工作区上方显示按钮。这两个命令的名称你可以随意定义,比如"Diff commit"/"Diff clone",或者"Diff push"/"Diff pull".

最后:select本地和远程文件同时使按钮可用