请问在家怎么让两台电脑通过 NAS 快速同步代码 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
zau11berer
V2EX    NAS

请问在家怎么让两台电脑通过 NAS 快速同步代码

  •  
  •   zau11berr 2023-02-11 13:55:23 +08:00 7047 次点击
    这是一个创建于 982 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在家办公,一直坐在电脑前面写代码就很累,想写一下到床上换 mbp 接着写,就感觉没必要提交。

    手上有有群晖的 DS920+,千兆路由。代码两台电脑都有的时候,双向同步挺快的。 但新项目,比如前端 yarn 一下,同步就一个小时了。

    大佬们有没有好办法让代码这种小文件快速同步。

    第 1 条附言    2023-02-11 22:45:38 +08:00
    之前没发现 Drive 还能展开项目文件夹,选择同步。已经排除了各种项目的包目录,感谢
    liyvhg
        1
    liyvhg  
       2023-02-11 14:05:16 +08:00 via Android
    两种思路:
    将代码保存在 nas 上,本地挂载编辑
    Git 或者 SVN
    Puteulanus
        2
    Puteulanus  
       2023-02-11 14:09:49 +08:00   1
    要不直接 mbp 远程到台式上写
    zau11berer
        3
    zau11berer  
    OP
       2023-02-11 14:10:54 +08:00
    @liyvhg 尝试了直接放在 nas 上,smb 连接,但是不管 npm 、maven 还是 cocoapods 啥的,安装第三方包都会很慢,或者直接不动了的情况。
    如果用 git 那确实就没问题,就想偷个懒不写 commit ,换设备还能继续哈哈哈哈
    xiaofeifei8
        4
    xiaofeifei8  
       2023-02-11 14:14:27 +08:00
    用群晖的 Drive 同步两台电脑的指定文件夹
    bingkxChen
        5
    bingkxChen  
       2023-02-11 14:19:15 +08:00   1
    这种是不是应该搞个远程桌面
    zau11berer
        6
    zau11berer  
    OP
       2023-02-11 14:20:42 +08:00
    @Puteulanus 那早上就一定要起来去开机了- 。-
    想着 nas 是文件中枢,看能不能直接通过 nas 解决
    yghack
        7
    yghack  
       2023-02-11 14:22:52 +08:00
    专门开了一个 ubuntu 的 vm 在家里的 nas 上
    平时都是 vscode 的 ssh 插件过去远程开发,你可以试试
    zau11berer
        8
    zau11berer  
    OP
       2023-02-11 14:25:16 +08:00
    @xiaofeifei8 现在已经用了 Drive ,已经同步过的代码改起来都能实时同步
    但新创建一个项目,依赖第三方包之后,小文件太多,同步的太慢
    zau11berer
        9
    zau11berer  
    OP
       2023-02-11 14:26:59 +08:00
    @yghack 没折腾,还没装过 vm ,我现在试试
    a6228164
        10
    a6228164  
       2023-02-11 14:28:49 +08:00 via Android
    webdav
    zau11berer
        11
    zau11berer  
    OP
       2023-02-11 14:32:05 +08:00
    @yghack 但这样是不是算用 nas 做开发机了? nas 的 CPU 一般,也不是固态,编译速度和 HRM 都可以吗?
    yghack
        12
    yghack  
       2023-02-11 14:34:36 +08:00
    @zau11berer 是的,我的 nas 配置比较高,前后端我都是丢 nas 编译的。
    cxh116
        13
    cxh116  
       2023-02-11 14:35:56 +08:00 via Android
    不同步,文件直接放 nas ,通过 nfs 挂载成本地目录。
    zau11berer
        14
    zau11berer  
    OP
       2023-02-11 14:36:26 +08:00
    @yghack 那群晖这个估计够呛,我试试先,感谢
    flyinghigherair
        15
    flyinghigherair  
       2023-02-11 14:53:05 +08:00
    群晖 Synology Drive 可以过滤同步指定文件和文件夹的
    zau11berer
        16
    zau11berer  
    OP
       2023-02-11 14:53:19 +08:00
    @cxh116 刚试了下,装第三方包也是很慢。还是说我姿势不对~
    DShen
        17
    DShen  
       2023-02-11 14:55:09 +08:00 via iPhone
    使用支持远程开发的 ide ,比如 vsc ,idea 这种,服务端部署在 nas ,电脑上只有客户端
    zau11berer
        18
    zau11berer  
    OP
       2023-02-11 14:57:51 +08:00
    @flyinghigherair 刚发现还能展开,是我傻了
    otakustay
        19
    otakustay  
       2023-02-11 15:01:24 +08:00
    我用 Synology Drive ,但不同步 node_modules ,这东西同步还没自己装一下快
    Me7426
        20
    Me7426  
       2023-02-11 15:04:34 +08:00
    参考那些在公司开发机上开发的,你让 PC 和 mbp 都 IDE 远程到 NAS 上开发,就能随时切换了
    zau11berer
        21
    zau11berer  
    OP
       2023-02-11 15:11:29 +08:00
    @otakustay 之前没注意,15 楼刚说我才发现还可以展开项目目录。这样确实快多了
    documentzhangx66
        22
    documentzhangx66  
       2023-02-11 15:21:27 +08:00   1
    别偷懒,同步代码,一定要用 GIT 或 SVN ,通过提交与拉取,来同步。
    56rhcrivs55TVKdX
        23
    56rhcrivs55TVKdX  
       2023-02-11 17:07:16 +08:00
    syncthing
    guisheng
        24
    guisheng  
       2023-02-11 17:27:45 +08:00 via iPhone
    感觉写个自动化脚本比较可靠。自动提交和拉取。
    leonard916
        25
    leonard916  
       2023-02-11 18:07:58 +08:00
    远程 IDE +1 ,IntelliJ IDEA 或 VSCode 都支持。
    s1e42NxZVE484pwH
        26
    s1e42NxZVE484pwH  
       2023-02-11 18:14:51 +08:00 via iPhone
    @zau11berer 小文件同步慢的话,可以考虑 nas 加装 ssd 缓存。
    panlatent
        27
    panlatent  
       2023-02-11 20:01:07 +08:00 via iPhone
    Git 或远程 IDE 为佳
    mytharcher
        28
    mytharcher  
       2023-02-11 20:07:03 +08:00
    Resilio sync 最佳选择,连 NAS 都不需要,两台机器建立同步目录后,局域网内几乎几秒内变动都会同步好。但还是不建议同步 node_modules 目录(可以排除),尤其第一次的时候文件太多,不如直接装一遍。不过不要排除 .git 目录,换到另一台电脑上连 git 状态都有会很方便。
    tcpdump
        29
    tcpdump  
       2023-02-11 20:24:24 +08:00
    前端写个 Hello World 都是几百兆
    star7th
        30
    star7th  
       2023-02-11 20:24:42 +08:00
    你一开始的开发方式就是错的。居然试图同步 node_modules ? 答案就是别同步 node_modules 。只同步其他代码。
    node_modules 本身安装频率低,各自机器上安装一下就好
    limbo0
        31
    limbo0  
       2023-02-11 20:38:08 +08:00
    把库文件 exclude 掉啊
    vipnetant
        32
    vipnetant  
       2023-02-11 20:40:26 +08:00
    Synology Drive
    rekulas
        33
    rekulas  
       2023-02-11 20:53:40 +08:00
    我之前试过基于 cwrsync 文件变动监听来实现同步的,主要是本机和虚拟机同步,可以实现毫秒级同步,内网没试过,但应该也在毫秒级别(估计几十-几百)

    之所以要自己实现是因为以前的虚拟机共享技术很费资源,后面因为虚拟机的共享技术升级了就没用了。。
    gudako
        34
    gudako  
       2023-02-11 20:56:46 +08:00 via Android
    syncthing
    Zhouisme
        35
    Zhouisme  
       2023-02-11 22:51:41 +08:00
    懒得提交就不用: 1. 使用 git,添加.gitignore,屏蔽不需要的目录,web 前端,典型的 node_modules 之类的。
    2.一台电脑开机,vscode ssh remote 写代码,不存在代码同步
    3,搭建一个类似云盘共享的服务,比如 smb ,挂载目录写代码。
    4.远程桌面?
    5.直接 ssh 到 NAS,然后使用 nvim 进行编辑代码
    Zhouisme
        36
    Zhouisme  
       2023-02-11 22:54:46 +08:00
    @Zhouisme 考虑同步的想法就很蠢呀...,要同步也要考虑应该同步哪些文件吧?提交过代码吗?最小项目搭建过没?需要什么不需要什么,这是很基础的东西。
    bjzhush
        37
    bjzhush  
       2023-02-11 23:54:51 +08:00
    推荐 freefilesync ,支持三大操作系统,支持命令行模式,同步有一些优化的操作,速度也非常快,可以试试
    zau11berer
        38
    zau11berer  
    OP
       2023-02-12 00:15:42 +08:00
    @rekulas 最近也在想用 wsl2 来做开发环境,但发现外挂就全都要 chmod ,感觉很奇怪。如果能监听同步确实是个办法
    zau11berer
        39
    zau11berer  
    OP
       2023-02-12 00:49:45 +08:00   1
    @Zhouisme 大半夜戾气这么重干嘛。况且我目标就是两台电脑能无缝衔接,你这几个方案
    1. 添加 gitignore 就能不提交了嘛?况且前端你随便用脚手架创建的工程,那个不是排除了 node_modules 的。
    2. 3. 将代码放在 nas 盘中开发,拉取第三方包 update 时依然很慢,没有意义。
    4. 这种方案必须开 Windows ,我想用 Nas 就是让他作为家庭数据中心,自然是找可以以 Nas 为中心的方案。
    5. 直接当开发机,找不自在么。要也是 7 楼的方案了。

    上面也说了,之前没注意还能展开项目里面的文件夹,15 楼说过就排除了。
    Jtyczc
        40
    Jtyczc  
       2023-02-12 02:11:43 +08:00
    @zau11berer 台式不要关
    geekzhu
        41
    geekzhu  
       2023-02-12 02:33:16 +08:00
    新项目这种,其实用添加例外的形式,是很麻烦的,每次新建都得添加一次例外。最好的偷懒方式,就是等它同步完成,尤其是局域网,几百兆也很快就同步了,刷刷 v 站就过去了
    ddvswgg
        42
    ddvswgg  
       2023-02-12 02:39:00 +08:00 via iPhone
    用 dropbox
    aliceclark
        43
    aliceclark  
       2023-02-12 05:15:24 +08:00
    nas 上建个 coder ,用浏览器写代码
    alne
        44
    alne  
       2023-02-12 07:50:28 +08:00
    syncthing
    fox0001
        45
    fox0001  
       2023-02-12 07:57:27 +08:00 via Android
    肯定是自建服务器或者 nas 了。现在我只关心服务器的数据备份,其它设备都是同步文件过去。
    Quarter
        46
    Quarter  
       2023-02-12 08:48:01 +08:00 via Android
    如果 nas 性能不咋样的话可以挂载了之后在挂载盘里拉项目开发,不过我没试过这个,不知道网络存储的读写有没有影响
    如果 nas 性能可以的话可以直接弄个 code-server ,打开浏览器就直接开始开发,方便快捷
    Dragonish3600
        47
    Dragonish3600  
       2023-02-12 09:17:23 +08:00 via iPhone
    NAS 里跑个 linux ,然后用 vocode 远程啊
    lovelylain
        48
    lovelylain  
       2023-02-12 09:24:16 +08:00 via Android
    @zau11berer 按 2 楼说的,远程登录到台式机上开发,至于你 6 楼回复的缺点,很容易解决啊,wol 自动开机,不用下床的。
    encro
        49
    encro  
       2023-02-12 09:32:56 +08:00
    如果是 vscode 就直接 ssh 编程
    webcape233
        50
    webcape233  
       2023-02-12 10:38:21 +08:00 via iPhone
    syncthing 同步 简单。 电脑 nas 都装上
    brust
        51
    brust  
       2023-02-12 11:48:22 +08:00
    直接装个 git 就好
    设置个内网 remote
    basncy
        52
    basncy  
       2023-02-12 19:08:11 +08:00
    代码同步了, 环境不好同步吧?
    所以, 远程 or 无盘系统?
    qinrui
        53
    qinrui  
       2023-02-12 23:33:06 +08:00 via iPhone
    远程桌面
    benjen000
        54
    benjen000  
       2023-02-12 23:44:40 +08:00 via Android
    在 nas 里面搭一个 seafile ,然后用客户端实时同步到 seafile 里面。只要保存一下就同步到 seafile 里了,另一台会自动同步下来。
    DevWiki
        55
    DevWiki  
       2023-02-13 10:26:07 +08:00 via Android
    装个 gitea 很快啊, 方便, 比如我的:
    https://git.devwiki.net
    zbowen66
        56
    zbowen66  
       2023-02-13 13:19:20 +08:00
    @DevWiki 啥宽带啊,没有屏蔽 443
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3862 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 10:27 PVG 18:27 LAX 03:27 JFK 06:27
    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