2010-05-07 48 views
2

我正在寻找在自动文件夹同步工具的建议,以保持内容在我们的自动同步三种环境。保持内容的测试/开发好的工具/现场环境同步

具体来说,我们有几个应用程序,用户可以上传内容(通过文件上传页面或类似的机制),例如图像,pdf文件,word文档等。过去,我们让用户这样做到我们的实时服务器,结果,我们的测试和登台服务器必须手动同步。未来,我们会让他们将内容上传到登台服务器,我们希望一些软件能够自动将文件复制到测试服务器上,并且可以定期或在文件上传时使用服务器。

我打算编写自己的组件,并将其设置为计划任务,或者使用FileSystemWatcher,但我想这可能已经完成了,而且我可能会更好一些已存在的同步工具。

在我们的网站上,有我们希望保持同步的文件夹的数量有限。在这些文件夹中,它是全部或全部 - 我们要确保文件夹是完全重复的。这应该使它相当简单,我认为任何可以同步文件夹的软件都可以,除了我们还希望软件记录更改。 (这排除了简单的批处理文件。)

所以我很好奇,如果你有一个类似的环境,你是怎么解决藏在心里同步的挑战。您是否知道一种可靠的工具,并能满足我们的需求?如果不是的话,你有没有推荐一些接近或者更好的开源解决方案,我们可以根据需要获取代码并进行修改? (最好是.NET)。

新增

而且,我做了第一款谷歌这一点,但有这么多的选择,我很感兴趣的是知道什么实际效果很好VS他们所说的作品,这就是为什么我问这里。

增加了更多的

我忘了指定,这些都是Windows服务器。 (确切地说是Windows Server 2003)对不起。

回答

1

如果你想这样做计划的基础上,我使用SyncBackSE做到这一点 - 这将同步多个文件夹(或FTP站点)任一方向,并且可能是你在找什么。但是,这是一个计划任务,我不相信它可以按需启动(尽管Pro版本可能支持这一点)。

+0

嘿,现在这看起来像一个很好的工具...削减我通过谷歌foung之上。谢谢!我们会研究这一点。 – David 2010-05-07 17:25:56

+0

这真是太好了 - 我们用它来每天备份我们公司的服务器几次到FTP站点,并且它运行得非常好。我玩过它提供的多位置同步设置,他们似乎工作得很好,虽然我们还没有用过它们。 – SqlRyan 2010-05-07 17:32:22

1

在linux上,rsync是最好的工具。

+0

对不起,这是我没有指定操作系统的坏处。虽然,Linux的好答案。 – David 2010-05-07 17:19:26

+1

您可以在Windows下使用cygwin运行rsync,或者获取其中一个MinGW版本以独立运行它。 – jon 2010-05-07 17:28:54

+0

你不需要cygwin在windows上运行它。我没有使用它。编辑:你con con下载.exe在这里http://it-em.net/cms/upload/downloads/rsync.zip(但我只注意到cygwin dll包装的EXE :) – Daniel 2010-05-07 19:14:47

0

齐声是一个很好的同步工具,但只支持每次运行两个副本。要同步三个站点,您必须执行A < - > B,B < - > C,A < - > C。

我建议使用git。在每个站点制作回购站并使用git-add,git-rmgit-commit自动化,以在每个回购站提交当前的环境状态。您想要同步发生时,自动在回购之间进行推拉。