大家怎么同步云工作站和笔记本的代码 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
geeti
V2EX    程序员

大家怎么同步云工作站和笔记本的代码

  •  1
     
  •   geeti 2018-09-03 05:13:53 +08:00 4446 次点击
    这是一个创建于 2626 天前的主题,其中的信息可能已经有所发展或是发生改变。

    公司发的笔记本比较弱鸡,15 年的 mbp,但每人配 48 核云主机用来开发和调试。

    现在的问题是想找到一个最好用的双路自动同步的解决方案,本地的 ide 代码写完,直接在远程运行。或者远程 ssh 改点东西,自动同步导笔记本。

    sshfs/smb 这些不能在本地保存,就不考虑了。

    用过 unison,fsmonitor 在 mac 上支持不好,太耗 cpu

    现在用 syncthing,大部分时间还行,但有时候居然会漏掉几个文件

    还有什么好用的解决方案吗?

    45 条回复    2020-04-12 15:02:42 +08:00
    leafiy
        1
    leafiy  
       2018-09-03 06:00:58 +08:00 via Android
    在用 geeknote
    geeti
        2
    geeti  
    OP
       2018-09-03 06:14:22 +08:00
    @leafiy 这东西不能用吧?要是把代码传到第三方服务器这是要丢工作的啊
    leafiy
        3
    leafiy  
       2018-09-03 06:25:54 +08:00
    @geeti 理解错了,你要同步代码阿,之前用过 rsync 还可以,完全没遇到过漏掉文件
    opengps
        4
    opengps  
       2018-09-03 06:36:09 +08:00 via Android
    48 核主机,直接远程开发就够用了吧
    geeti
        5
    geeti  
    OP
       2018-09-03 06:45:31 +08:00
    @opengps 远程开发写代码咋写?直接用 vim 写 java 没那本事
    X11 远程 ide 界面实在太丑
    公司开发的 cloud9 远程 ide 又不支持 java
    geeti
        6
    geeti  
    OP
       2018-09-03 06:46:13 +08:00
    @leafiy rsync 是最老牌的,但问题是 rsync 貌似不能检测文件系统触发自动同步
    jmc891205
        7
    jmc891205  
       2018-09-03 07:12:02 +08:00
    代码存在本地 编译和运行的时候丢到服务器上去
    不知道有没有开源的实现 我们公司是用的自己开发的工具
    jorneyr
        8
    jorneyr  
       2018-09-03 07:39:42 +08:00
    在服务器上弄个 Git 私服
    kirigaya
        9
    kirigaya  
       2018-09-03 07:49:14 +08:00
    https://github.com/axkibe/lsyncd 可以试试这个。
    lishunli
        10
    lishunli  
       2018-09-03 07:51:42 +08:00 via Android
    要不要整一套 CI
    zclHIT
        11
    zclHIT  
       2018-09-03 07:53:57 +08:00 via iPhone
    代码本地测功能..然后打好包发布到服务器上再测一遍..小修改直接本地编译替换服务器 class 重启 tomcat..大改动重新打个包..至于效率嘛……( ̄ ̄"")
    lovepocky
        12
    lovepocky  
       2018-09-03 08:14:39 +08:00 via iPhone
    syncthing 用一年多了,挺稳定
    huangzhe8263
        13
    huangzhe8263  
       2018-09-03 08:34:54 +08:00 via Android
    如果是常见语言的话
    用 jetbrains 家 ide 如 pycharm 走远程部署即可
    Nick2VIPUser
        14
    Nick2VIPUser  
       2018-09-03 08:38:27 +08:00 via iPhone
    在公司找台服务器部署 gitlab
    inhzus
        15
    inhzus  
       2018-09-03 09:00:14 +08:00 via Android
    vs jetbrains 都支持通过 sftp,ftp 等协议远程部署
    huclengyue
        16
    huclengyue  
       2018-09-03 09:21:36 +08:00
    @geeti docker 然后运行 LINUX 下的 IDE?
    cncqw
        17
    cncqw  
       2018-09-03 09:29:54 +08:00
    git 就可以了,然后用 hook 自动同步
    HangoX
        18
    HangoX  
       2018-09-03 09:30:59 +08:00
    不是可以用 eclipse che ?web ide
    merin96
        19
    merin96  
       2018-09-03 09:38:25 +08:00 via iPhone
    搬瓦工搭的 git 服务器
    batter
        20
    batter  
       2018-09-03 09:45:10 +08:00
    在那个服务器上搭建个 git 服务器,防火墙设置一下,应该问题不大吧
    Z1076
        21
    Z1076  
       2018-09-03 10:06:14 +08:00 via iPhone
    跟我的环境差不多,我是本地写完代码,然后执行一个 alias 的脚本。脚本包括 rsync 以及发送远程编译以及重新加载命令。
    ifane
        22
    ifane  
       2018-09-03 10:26:06 +08:00
    jetbrains 家的 IDE 都支持远程开发吧.
    pycharm 为例, 创建项目选择 SSH Interpreter 以及 remote project location.
    当你保存操作时,会自动 upload, 切换 git 分支则需要手动在 tools 里选择 Deployment->upload.
    geeti
        23
    geeti  
    OP
       2018-09-03 11:01:40 +08:00
    @merin96 把公司代码发到私服,不要工作了么
    geeti
        24
    geeti  
    OP
       2018-09-03 11:04:00 +08:00
    @huclengyue 没懂,啥意思?
    sampeng
        25
    sampeng  
       2018-09-03 11:13:48 +08:00
    ide 的远程开发是正解。git 之类的太不靠谱。
    但网络抖动是不能避免的。

    其实一般开发。本地编译测试已经绰绰有余了。。无法理解弄个 48 核的远程服务器是个什么逻辑。。还每人一台?

    简单的 php。java 后台应用。。跑个逻辑还跑不动?

    最后开发完了,上服务器做压力测试倒是可以来一波
    kslr
        26
    kslr  
       2018-09-03 11:23:59 +08:00 via Android
    Jetbrains 都支持远程环境运行
    但我觉得这样意义不大,抠门的公司
    geeti
        27
    geeti  
    OP
       2018-09-03 11:24:17 +08:00
    @sampeng 云主机是自家的,反正也用不完,就直接给员工拿着用了。
    ide 远程开发是指本地文件,远程编译?
    geeti
        28
    geeti  
    OP
       2018-09-03 11:24:58 +08:00
    @kslr 是 ultimate 版才有吧?
    OrangeM21
        29
    OrangeM21  
       2018-09-03 11:30:46 +08:00
    家里的 NAS 搭了个 gitlab
    billchenchina
        30
    billchenchina  
       2018-09-03 12:00:00 +08:00 via Android
    rslsync (前身 BTSync )
    设置预定义主机即可
    xuhaoyangx
        31
    xuhaoyangx  
       2018-09-03 12:05:53 +08:00
    300 块 3 年的 vps,搭了个 gogit。gitlab 太重。
    loveCoding
        32
    loveCoding  
       2018-09-03 12:06:19 +08:00
    土豪公司么?48 核 哈哈哈,不如提个建议让公司备台显示器
    VisionTheta
        33
    VisionTheta  
       2018-09-03 12:13:38 +08:00
    我的需求是同步本地文件到服务器上,最开始想到的当然是 rsync 但是没有触发功能,文件修改了,也不能自动同步

    所以后来我发现了 lsyncd, 这套工具非常好用,文件同步很好用,我用它来同步 GPU 服务器训练好的模型到本地来做评测,再把 tensorflow 的 events 文件同步给服务器,供 tensorboard 使用。
    还有一个用途,我用来同步我的数据,用了半年多了,lsyncd 一次也没有重启过。

    至于楼主说的这个需求,我觉得 lsycnd 的 readme 里面介绍的 mirror 这个项目不错,虽然我并没有亲测过(我们工位机用来开发够了),但是看起来很不错,我觉得楼主可以测试一下,给大家也反馈一下。

    项目地址在这里: https://github.com/stephenh/mirror

    当然,我的经验是,工具再好用,可能也需要自己再稍微调调,动手能力要强。
    geeti
        34
    geeti  
    OP
       2018-09-03 12:37:50 +08:00
    @loveCoding 显示器是 LG 的 5K,但是跟这没有关系啊。。。
    geeti
        35
    geeti  
    OP
       2018-09-03 12:38:40 +08:00
    @VisionTheta 谢谢,这个有意思,我来学习学习。
    geeti
        36
    geeti  
    OP
       2018-09-03 12:40:11 +08:00
    这个不是免费吧?
    geeti
        37
    geeti  
    OP
       2018-09-03 12:40:37 +08:00
    @xuhaoyangx 把公司代码传到任何外部服务器都是属于作死丢工作的行为
    xuhaoyangx
        38
    xuhaoyangx  
       2018-09-03 12:46:45 +08:00
    @geeti #37 300 块公司付的
    geeti
        39
    geeti  
    OP
       2018-09-03 12:48:57 +08:00
    @xuhaoyangx 你们不怕泄露吗
    geeti
        40
    geeti  
    OP
       2018-09-03 12:49:21 +08:00
    @billchenchina 这个不免费吧
    lfzyx
        41
    lfzyx  
       2018-09-03 13:44:53 +08:00
    用 Gocd 或者 Jenkins
    Earl
        42
    Earl  
       2018-09-03 14:22:21 +08:00
    云主机能部署 samba 服务器不?我们都是直接用 samba 把云主机映射到 windows 网络磁盘,然后在 windows 下写代码。
    merin96
        43
    merin96  
       2018-09-03 15:01:22 +08:00
    @geeti 我专门问过,无所谓的(小公司
    不过既然代码都是在云主机上跑, 本地只负责编辑, 本地留一份干嘛...
    geeti
        44
    geeti  
    OP
       2018-09-04 00:41:30 +08:00
    @merin96 干活时有时候不在公司或者没连 vpn。
    另外每个包都比较大的话,若果是 smb 每次连接都要传一阵子才能本地打开
    woyaojizhu8
        45
    woyaojizhu8  
       2020-04-12 15:02:42 +08:00
    请问 syncthing 你设置了文件系统改动监视了吗?
    漏掉文件的时候,重新扫描,能够成功完整同步吗?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5713 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 06:20 PVG 14:20 LAX 22:20 JFK 01:20
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86