我在一家小公司工作,我们通过SSH连接到我们的开发环境进行提交,并通过SMB查看文件结构。
在我提交代码之前,我希望能够看到我提交的文件的一个很好的GUI Diff。我使用Coda 2进行编程,不幸的是它的源代码控制支持是糟糕的,并且不会检测到我的开发目录所在的SMB安装驱动器也是SVN工作副本,所以它的所有SCM工具在工作中完全没用。
无论如何,因为我是SSH,我不能使用opendiff或diffmerge命令(因为它们安装在我的本地计算机上,而不是安装在远程服务器上)。
我想知道是否有人可以给我一个关于如何从命令行调用svn diff的提示,但是然后在一个漂亮的GUI显示中查看它而不是SVN给你的文本 - / +表示法命令行。
答案 0 :(得分:1)
如果您在服务器中安装了首选的GUI工具,只需通过ssh隧道X,如:
ssh -X yourworkserver
然后,只需在服务器中选择您的工具,就像它是一个支持X的终端一样。
如果您的服务器没有(能够使用)工具,您可以始终同步要提交到本地计算机的内容。例如。
rsync -a --delete --partial --progress --rsh=ssh username@yourserver:/path/to/code/about/to/be/committed /path/to/the/snapshot/in/your/machine
然后在本地运行您喜欢的GUI工具。您可以添加-az以通过压缩流量来加速进程。
如果您的服务器有Ubuntu,请让有权限的人运行“sudo apt-get install meld”,并使用Meld覆盖隧道X.
大多数体面的文本编辑器(例如Emacs,Vim,...)都具有默认配置中包含的diff语法突出显示,并且它们也具有文本模式。
答案 1 :(得分:1)