代码实时同步工具nobone-sync

给大家推荐一个提高工作效率的工具:nobone-sync
主要作用是进行 本地代码 与 远程服务器代码 的实时同步

github:https://github.com/ysmood/nobone-sync

背景

环境部署在远程开发机,而代码使用本地IDE编写(不想用VIM),需要需要找到一个代码实时同步的工具,把本地编写的代码传到开发机上。

有人说,可以使用samba,直接连上服务器就ok了,但它有一个很大的缺点就是不稳定,有时候连着连着就断掉了,导致IDE卡住崩溃。其次,在大工程项目上,如果连着samba进行搜索,会非常慢。

后来,同事推荐了一个工具nobone-sync,它使用HTTP进行通信,可以实现秒级同步,另外也可以绕过跳板机,非常符合我们的要求。

nobone-sync的几个特点:

  1. 秒级同步
  2. 配置简单(服务器挂载个进程,本地起个进程)
  3. 安全加密传输

安装

nobone-sync使用npm进行安装(如果没有npm,请先装npm)
(在服务器端、本地环境,都需要安装)

$ npm install -g nobone-sync

配置

假设远程服务器地址:10.99.18.18
本地地址:127.0.0.1

1. 服务端配置

登陆远程服务器,在目录下,新建一个配置文件:sync_config.js

$ cd ~
$ vim sync_config.js

把如下配置加入文件中

module.exports = { 
  rootAllowed: '/home/work/test',    // 允许同步的目录
  host: '127.0.0.1',                 // 挂载地址 (直接填127.0.0.1)
  port: 8099,                        // 选择一个端口(注意和本地保持一致)
  pattern: '**',                     // 同步的文件类型(**表示所有类型)
  password: 'xxxxx',                 // 填写密码
  algorithm: 'aes128',               // 加密方式
  onChange: function(type, path, oldPath) {}
};
2. 本地配置

在本地目录下,也新建一个配置文件:sync_local_config.js

$ cd ~
$ vim sync_local_config.js

把如下配置加入文件中

module.exports = { 
  rootAllowed: '/Users/yitian/work/',    // 需要同步的代码目录
  remoteDir:'/home/work/test/abc/',      // 对应的远程服务器目录
  host: '10.99.18.18',                   // 远程服务器地址
  port: 8099,                            // 和远程服务器配置一致的端口
  pattern: '**',                         // 同步的文件类型(**表示所有类型)
  password: 'xxxxx',                     // 填写密码
  pollingInterval: 800        
};

启动

当服务器和本地都安装并写好配置文件后,即可启动nobone-sync。
远程服务器,执行

$ nobone-sync -s sync_config.js &

本地,执行

$ nobone-sync sync_local_config.js
出现synced,即表示同步成功

End.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,497评论 19 139
  • 4层负载均衡和7层负载均衡的区别。A、rsync的安装;软件包安装# yum install rsync 注...
    米开朗基乐阅读 9,068评论 0 1
  • 1. Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构...
    garyond阅读 14,873评论 2 29
  • 1、第八章 Samba服务器2、第八章 NFS服务器3、第十章 Linux下DNS服务器配站点,域名解析概念命令:...
    哈熝少主阅读 9,161评论 0 10
  • 空荡无息的一处房屋里面, 黑压压的气氛, 稀薄淡漠的一个人, 无所事事的躲在暗夜里的某个角落。 突然看不见的星光,...
    阿俊xi阅读 1,189评论 0 0