windows本地代码同步到Linux开发服务器的方法

来源:互联网 发布:护卫神linux 编辑:程序博客网 时间:2024/05/16 11:46

背景

目前的Linux统一开发服务器,目前,开发者通过CIFS或SAMBA远程挂载的方式使用.
但是,某异地接口带宽只有几十M,非常影响使用.
因此,这里给出第三种解决方案.
代码放在本地,通过同步指令同步服务器的代码,然后再在服务器那进行编译.

同步代码方法

最简单的就是采用rsync指令,它可以使用增量方式的同步,速度非常快
但是,windows没有rsync指令.

如何在windows安装rsync

安装cygwin, 并额外安装rsync和ssh
(在官网下载一个,这是个在线安装工具,在选择库的步骤,务必加入 rsync和ssh 网络应用。搜索栏输入ssh,选择最下方的Net里的openssh,让bin一列打上X号即可,rsync同理。
注意:在选择镜像源后的下载过程中,如果出现download incomplete, try again的错误,点击 否 即可继续,中间忽略其错误)
(另外,建议安装vim,方便以后编辑文本)

简单使用rsync示例

打开cygwin后,可以tab出rsync,用法和linux一样

举例:
rsync -av /cygdrive/e/xx_folder yanyongwen@
:/home/yanyongwen

这句话的意思是, 将E盘的xx_folder同步到服务器的我的home路径下, 即服务器多了/home/yanyongwen/xx_folder

-a 是archive的意思, -v是verbose的意思

如果xx_folder后面加/, 则不会包含xx_folder本身,即/home/yanyongwen/下会有很多xx_folder里的文件

如何不输入密码

上面的步骤,每次都要求你输入ssh的密码
可以采用ssh秘钥的方式实现免密码:

服务器加入你的ssh密钥:

1.执行 ssh-keygen.exe(一路回车即可)

2.ssh-copy-id yanyongwen@10.9.88.88

输入一次密码,以后都免密码了!

(以上yanyongwen改为自己的名字)

其他说明

rsync第一次会全部上传,以后就可以增量同步了

如果需要排除文件夹如根目录下的.svn, rsync加入–exclude=.svn即可

vi ~/.bashrc
将rsync变成方便自己使用的函数即可,例如.bashrc加入

function rsync_dev(){

rsync -av /cygdrive/1yanyongwen@10.9.88.88:/home/yanyongwen/2

}
以后就可以rsync_dev local_folder remote_folder同步了

如果需要将服务器生成的文件同步下来,只需要把上面rsync两边的地址反过来即可。

阅读全文
0 0
原创粉丝点击