0

我有一个在 Windows PC 上工作的环境,我的工作区位于远程 linux 服务器上,我可以通过 ssh 访问该服务器。我正在处理一个 Dos 批处理文件,以自动比较我工作区中所有修改过的文件。到目前为止,我有一些可以打开所有文件的东西,但由于某种原因,它会在单独的会话中打开每个文件,而且在窗口之间切换很痛苦。我想知道是否有任何技巧可以在同一会话中使用不同的选项卡打开所有文件。目前,我的脚本如下所示:

plink ott-ads -l %user% -i %ppk_file% ^
  "cd %root%; for f in %files%; do git show %commitid%:$f > $f.gitupstream; done; echo $files | tr ' ' '\n' | dospath > files.dos.gitupstream;"

for /F "tokens=*" %%A in (%dosroot%\files.dos.gitupstream) do echo "C:\Program Files\Beyond Compare 4\BCompare.exe %%A.gitupstream %%A" & START /B "C:\Program Files\Beyond Compare 4\BCompare.exe" %%A.gitupstream %%A

(哪里%files%是要比较的预填充文件列表,%commitid%是我要比较的提交,dospath是一个简单的脚本,可以将 linux 路径转换为 ​​dos 路径)

此链接似乎建议使用脚本来“与 BC4 同步”,但并未建议如何执行此操作。任何想法都会受到欢迎。(注意:使用“超越比较 4”和 windows 10)

4

1 回答 1

1

有3种方法可以解决这个问题:

  1. 如果 git 存储库在您的 Windows 机器上,请将 Beyond Compare 配置为外部 difftool,然后运行 git difftool --dir-diff以在文件夹比较中启动差异。

  2. 如果您可以在远程机器上安装 Beyond Compare for Linux,另一个选择是在该机器上将 Beyond Compare 配置为 git 的 diff 工具,在您的 Windows 机器上使用 X-Window 客户端远程显示 BC for Linux,然后运行git difftool --dir-diff​​.

  3. 将要在 Linux 机器上比较的修订导出到文件夹,然后使用 Beyond Compare 4 Pro 的内置 SFTP 支持将两个文件夹加载到 Windows 机器上的文件夹比较中。bcompare.exe sftp://user@server/1 sftp://user@server/2

于 2020-10-28T19:19:17.643 回答