我有一个项目,在那里我被迫使用ftp作为一种手段部署文件到实时服务器。
我是在linux上开发的,所以我编写了一个bash脚本来备份ftp服务器的内容,
删除ftp上的所有文件,并从mercurial存储库上载所有新文件。
(以及处理用户上传的文件和文件夹,以及进行部署后更改等)
它工作得很好,但是项目开始变得足够大,以至于部署过程太长。
我想修改脚本以查找已更改的文件,并且只部署已修改的文件(备份很好(尽管如此)
我使用mercurial作为VCS,所以我的想法是在两次修订之间请求更改的文件,迭代更改的文件,
上传每个修改过的文件,删除每个删除的文件。
我可以用汞
log -vr rev1:rev2
,并且从输出中,我可以用grep/sed/等来雕刻出更改过的文件。
两个问题:
hg log
,变量将经历分词和各种转换。
汞测井
那么,正确的方法是什么呢?我使用yafc作为ftp客户端,以防需要,但愿意切换。