通过删除不需要的文件将源部署到Web服务器

时间:2015-02-24 21:41:04

标签: web-deployment filezilla

使用visual studio for web开发asp.net时,将网站部署到Web服务器非常方便,它会巧妙地检查哪些文件已被更改,并且只上传这些文件。此外,如果您从源中删除了某些文件,它也会检测到这些文件并从Web服务器中删除这些文件,因为它们不再需要。

我开始使用LAMP堆栈进行开发,并且想知道如何以类似的方式部署到Web服务器。

我尝试使用Filezilla并将源文件复制/粘贴到Web服务器,如果有类似的文件,您可以选择这些选项:

-overwrite - 如果source更新,则覆盖 - 如果尺寸不同,则覆盖 - 如果尺寸不同或来源较新,则覆盖

"如果来源较新则覆盖"工作,种类,但它只检查修改日期,而不是文件的内容。此外,上述方法不会从Web服务器中删除从源中删除的文件。

使用Filezilla有更好的方法吗? (或者可能使用其他一些程序?)

感谢。

1 个答案:

答案 0 :(得分:0)

您可以使用rsync来完成此任务。

如果您想推出更改,您可以从生产服务器执行此类操作。

rysnc -av user@<developmentIp>:/web/root/* /production/web/root/

模式为rsync --flags [user@host:]/source/dir [user@host:]/destination/dir

您只需要远程主机的user @ host内容。用户必须具有对主机的ssh访问权限。

几点建议。

  • 可以从源或目标运行该命令。我发现从目的地运行命令更好,因为权限问题(即从远程读取并写入本地)

  • 先做一些测试,我总是混淆目录的东西;我是否需要结束斜线,如果我使用星号,......

  • 阅读手册页,有很多可能有用的选项(--delete--exclude-a