2009-09-26 98 views
3

你能为Windows推荐一个好的SSH文件同步工具吗?例如,我有一些我需要远程编译的C++源代码。我需要这个实用程序是简单的,最重要的是响应,所以我可以保存后立即编译我的源,而不必等待同步触发。你能推荐一个好的SSH同步工具吗?

+0

“响应”是什么意思?如果在同步之后没有触发编译,应该如何触发编译? – innaM 2009-09-26 15:21:10

回答

3

对于源代码,您可以使用像git或subversion之类的东西,配合使用端口转发的ssh连接。

在所有情况下,您都需要自己触发同步,除非您有一个工具来监视您正在处理的目录。

+0

你可以添加post commit钩子来scp你的文件吗? – discovlad 2009-09-26 16:18:36

+0

嗯,你是怎么意思的?确定你可以添加钩子(http://wordaligned.org/articles/a-subversion-pre-commit-hook),但为什么你应该在提交之后scp文件?对不起,我看不到这一点。 – Atmocreations 2009-09-26 18:53:26

1

使用rsync。见this。甚至有一条指令来设置自动备份。

+0

从我所看到的情况来看,当文件被更改并上传时,rsync不能自动检测到? – Dario 2009-09-26 15:28:33

+1

嗯。对不起,这是我的不好。我误解了你的问题的这一部分'而不必等待同步被触发。'。我在Windows中没有关于文件监视的经验,所以我真的无法帮助(再次抱歉)。然而,一个快速搜索引导我到FileSystemWatcher(http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx)在这里的教程(http://www.c-sharpcorner.com /UploadFile/mokhtarb2005/FSWatcherMB12052005063103AM/FSWatcherMB.aspx)。你可以试试看。 – NawaMan 2009-09-26 15:47:38

+0

+1 FileSystemWatcher运行良好,相当可靠。我已经用它来做一些小工具。当然,您需要使用C#或类似的任何.NET语言开发应用程序。 – Atmocreations 2009-09-26 16:00:57

0

安装cygwin并通过ssh使用rsync。

0

在我看来,解决您的问题的一种方法是简单地使用网络驱动器。从网络驱动器编辑文件,并且每当您保存时,连接到该驱动器的任何其他系统也可以访问您的更改,包括构建服务器。这就是我们在办公室所做的 - 每个人的主目录都在NFS/CIFS共享上,所以我们在本地计算机上进行编辑,但是运行一个脚本来触发构建任何多个构建服务器,甚至是多个平台。在被允许编译我们的最新更改之前,我们不必同步任何内容。

2

试试这个,SSHSync窗户

http://code.google.com/p/sshsync/

,使智能安全FTP传输的命令行应用程序。 SshSync只支持拉式传输,但它允许使用私钥来确保身份验证是安全的。包含一直处理的文件列表的文本文件用于检查是否只检索到“新”文件。

+0

我在查找这个时遇到了这个旧线程。它使用公钥验证完美工作,完全符合我的需求。 – Fanis 2010-09-14 14:24:13

相关问题