保持 FTP 文件夹与 Windows 文件夹同步

保持 FTP 文件夹与 Windows 文件夹同步

我正在尝试让我的持续集成系统在开发环境中从头到尾运行。

不幸的是,发布后的最后一步是将文件夹复制到异地服务器,我只能通过 FTP 访问该服务器。

我想要运行一项服务来监视本地文件夹,如果文件夹发生变化,则使用这些变化来更新 FTP 服务器。

我似乎无法在 Windows 中找到可以实现此目的的方法。

答案1

有免费的开源WinSCP FTP 客户端,它具有各种这样的功能。

您正在寻找的命令位于“命令”菜单并调用“保持远程目录更新”

保持远程目录最新对话框


脚本支持也可通过keepuptodate命令获得

答案2

尝试免费版本同步备份。它不进行实时文件夹监控,但您可以安排它以指定的时间间隔进行同步。将其设置为 1 分钟等较短的时间。

答案3

基于git的免费开源解决方案:

使用git ftp用于同步。安装并设置本地 git 存储库后,您可以执行以下操作:

  • git ftp init -u < user> -P f​tp://host.example.com/public_html #第一次推送
  • git ftp push --user <用户> --passwd <密码> f​tp://host.example.com/public_html

现在您只需要监视文件系统的变化,将它们添加到您的本地 git 存储库并使用上述命令推送您的存储库。

优点:

  • git-ftp 适用于 Windows 和 Linux(在 Windows 上使用 mysys git 进行测试)
  • 如果你已经在使用 git,它可以很好地集成到你的开发设置中
  • 非常容易设置和使用(如果你熟悉 git)
  • 增量更改 -> 节省大量带宽

缺点:

  • 您需要找到一个解决方案来监视文件系统的变化(应该不太难,例如 nodejs 对此有解决方案)

下面是我在 Windows 上使用的批处理文件的示例:

@echo off
git init .
git add . --all
git commit -am "auto commit"
set /p pwd= Please enter ftp password: 
git ftp push --user myftpuser --passwd %pwd% ftp://myftphost.com/myfolder

请注意,这是一个交互式示例,但您可以通过将密码存储在批处理文件中使其变为非交互式。

答案4

使用盒式文件传输

它是免费的、开源的,而且运行起来非常顺畅!它完全在后台运行,并且可以配置为自动启动。

它提供的体验与 Dropbox 完全相同;无需进行微观管理,它就能正常工作。

相关内容