如何同步文件到又拍云
需求:前端同学使用了又拍云静态资源,每次使用ftp进行上传,但有几个隐患,一是代码覆盖错了或者误删除非常危险,二是每次都要定位具体文件,操作非常不便。
如是有下面解决方案,前端使用svn或者git管理,使用一个台测试同步这些资源,然后将资源同步到又拍云。
1、测试服务器git同步
#!/bin/sh
cd /var/www/test
git checkout dev
git pull
可根据情况切换到哪个分支,例子这里是dev分支
2、资源同步到又拍云
#!/bin/bash
HOST="v0.ftp.upyun.com"
USER="test/test"
PASS="test"
LCD="/var/www/test"
RCD="/"
lftp -c "open ftp://$HOST;
user $USER $PASS && \
lcd $LCD && \
cd $RCD && \
mirror --reverse --delete --dereference --verbose \
--exclude-glob=*.svn/ \
--exclude-glob=*.DS_Store \
--exclude-glob=*.sh \
--exclude-glob=*.git/"
说明:USER为又拍云账号,PASS为密码。LCD 为本地目录,RCD为又拍云目录。特别注意的时候,如果又拍云/目录已经有资源了,同步的时候会删除里面的资源,建议RCD 为 /document 这样可以避免其它文件删除了。exclude-glob忽略不同步的文件或者目录。运行此代码最好是测试的又拍云账号,调试通了再换成正式账号。