V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
itfanr
V2EX  ›  程序员

SSH 远程登陆主机,如何上传大量代码?

  •  
  •   itfanr ·
    itfanr · 2014-02-13 09:03:21 +08:00 · 6320 次点击
    这是一个创建于 3718 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如果本地是windows,远程主机是linux。本地网站测试好了,该怎么上传到远程主机呢?谢谢
    50 条回复    1970-01-01 08:00:00 +08:00
    Keyes
        1
    Keyes  
       2014-02-13 09:04:09 +08:00   ❤️ 2
    sftp
    sarices
        2
    sarices  
       2014-02-13 09:04:30 +08:00
    sftp
    sarices
        3
    sarices  
       2014-02-13 09:05:10 +08:00
    我是sarices
    sarices
        4
    sarices  
       2014-02-13 09:06:01 +08:00
    @livid 出现BUG了,一楼是我发的
    dreasky
        5
    dreasky  
       2014-02-13 09:06:12 +08:00
    git
    sarices
        6
    sarices  
       2014-02-13 09:07:12 +08:00
    @livid 看针对这个主题的扣费,我扣了4次,包括这次
    itfanr
        7
    itfanr  
    OP
       2014-02-13 09:07:18 +08:00
    @Keyes
    @sarices sftp 听说过。我可不可以放在云存储(设好下载密码),然后远程下载&解压?
    itfanr
        8
    itfanr  
    OP
       2014-02-13 09:08:05 +08:00
    @sarices 为什么你是一楼?
    vfasky
        9
    vfasky  
       2014-02-13 09:08:16 +08:00   ❤️ 1
    在本地终端执行:
    scp -P [ssh端口] -r [文件夹路径] [ssh user]@[ssh 域名]:[服务端路径]
    sarices
        10
    sarices  
       2014-02-13 09:09:23 +08:00
    @itfanr 可以的,只要有一个可以直接下载的地址用wget就可以下载
    lichao
        11
    lichao  
       2014-02-13 09:09:26 +08:00
    WinSCP
    august
        12
    august  
       2014-02-13 09:09:41 +08:00
    @sarices 你跟一樓發相同內容,你給折疊了
    sarices
        13
    sarices  
       2014-02-13 09:10:21 +08:00
    @itfanr 是我发的,不知道为何变了@Keyes 发了
    rannnn
        14
    rannnn  
       2014-02-13 09:10:39 +08:00   ❤️ 1
    有GUI的FileZilla干嘛要用命令行呢
    sarices
        15
    sarices  
       2014-02-13 09:11:20 +08:00
    @august 没有提示折叠啊,之前好像有提示的
    itfanr
        16
    itfanr  
    OP
       2014-02-13 09:12:04 +08:00
    @sarices 当然假设是不能公开的代码
    viator42
        17
    viator42  
       2014-02-13 09:12:15 +08:00   ❤️ 1
    我一般filezilla连sftp,打个tar包再上传.
    itfanr
        18
    itfanr  
    OP
       2014-02-13 09:13:10 +08:00
    @viator42 貌似这个方案比较好~谢谢
    sarices
        19
    sarices  
       2014-02-13 09:13:57 +08:00
    @itfanr 一般用sftp就够了,如果你本机是Linux,可以用rsync scp
    zoowii
        20
    zoowii  
       2014-02-13 09:17:58 +08:00
    scp
    itfanr
        21
    itfanr  
    OP
       2014-02-13 09:18:14 +08:00
    @sarices 嗯嗯 灰常感谢!!!
    yuelang85
        22
    yuelang85  
       2014-02-13 09:18:54 +08:00
    rsync
    wwek
        23
    wwek  
       2014-02-13 09:22:00 +08:00
    svn
    git
    sftp
    Livid
        24
    Livid  
    MOD
       2014-02-13 09:23:13 +08:00
    @sarices 内容完全一样的回复,会被折叠。

    1 楼的提交时间比你的 2 楼稍微快了一点点,因为文字内容完全一样,所以 2 楼不显示。
    tonghuashuai
        25
    tonghuashuai  
       2014-02-13 09:27:00 +08:00
    ftp
    Keyes
        26
    Keyes  
       2014-02-13 09:29:07 +08:00
    @itfanr WinSCP+SFTP一般够了,不过我现在是在用sublime text+sftp plugin,开发来说后者好用得多。生产环境部署,可以通过很多种方式来进行,比如搭建一个GIT,在dev分支开发,定期merge到稳定分支,生产环境定期从稳定分支拉取新版本部署,反正都比较灵活,看你的习惯了
    yinheli
        27
    yinheli  
       2014-02-13 09:41:01 +08:00   ❤️ 1
    你是 windows 用户,推荐3种途径:

    1. 如果安装了 git, 应该可以使用 scp 命令, 服务端添加 ssh key 后, 可以很方便的使用 scp 上传文件
    2. 如果安装了xhell(服务端需要安装 lrzsz [yum install lrzsz])可以直接通过 xhell 窗口拖拽你要上传的文件(相当于在shell里输入了 rz 命令) 这种方式每次只能上传一个文件
    3. 安装类似 `SftpNetDrive` 之类的工具, 它可以把 linux 服务器的某个路径映射成你的本地磁盘,用起来就像你的本地 C盘,D盘一样, 用起来也很方便的 (你和远程主机的网速不好的情况下, 就不要使用这种方式了, 经常连接掉了会比较痛苦)
    yinheli
        28
    yinheli  
       2014-02-13 09:42:07 +08:00
    @yinheli 打错字了, 好像不能修改, 应该是 xshell
    lwrless
        29
    lwrless  
       2014-02-13 09:44:45 +08:00
    @yinheli xshell好像可以跟xftp联动,如果装了xftp的话,点xshell界面里的xftp图标会打开一个连接到服务器的xftp,不管服务器开没开ftp的服务...(而且比如我的xshell正在/home/wwwroot目录下,然后我点开xftp,也会在这个目录)
    rebornix
        30
    rebornix  
       2014-02-13 09:44:50 +08:00
    rsync
    Owenjia
        31
    Owenjia  
       2014-02-13 11:02:54 +08:00 via Android
    除 sftp 外还可以用 netcat
    xdeng
        32
    xdeng  
       2014-02-13 11:06:31 +08:00
    大量代码 为什么没人建议压缩成压缩包 然后再上传 文本压缩率很高的
    itfanr
        33
    itfanr  
    OP
       2014-02-13 11:17:17 +08:00
    @Keyes
    @yinheli
    @Owenjia 一一感谢~~~
    itfanr
        34
    itfanr  
    OP
       2014-02-13 11:17:49 +08:00
    @xdeng 压缩包也可以啊 我问的就是上传方式
    firstway
        35
    firstway  
       2014-02-13 11:25:58 +08:00
    lz没说清楚使用场景,是一次性传很多文件?还是频繁修改,每次文件不大?
    前者一般rsync scp就ok了,反正次数不多,linux下rsync scp很方便,windows对应客户端找找。
    后者还是建议git svn等,作为开发人员,没版本管理说不过去。

    @xdeng rsync本身就有压缩选项。
    thinkxen
        36
    thinkxen  
       2014-02-13 11:26:50 +08:00 via Android
    http://sshtool.net/down/
    头两个工具你会喜欢的
    fire5
        37
    fire5  
       2014-02-13 11:33:52 +08:00
    svn
    SharkIng
        38
    SharkIng  
       2014-02-13 11:34:59 +08:00
    @yinheli Mac或Linux下有没有类似工具或者类似办法的?? SFTPNetDrive
    itfanr
        39
    itfanr  
    OP
       2014-02-13 11:42:19 +08:00
    @firstway 我想要的是前者吧 谢谢你
    itfanr
        40
    itfanr  
    OP
       2014-02-13 11:42:31 +08:00
    @thinkxen 果然不错啊 谢谢
    mindcat
        41
    mindcat  
       2014-02-13 16:17:59 +08:00
    tar cJf - $DIRECTORY | ssh $HOST "tar xJvf -"
    jatsz
        42
    jatsz  
       2014-02-13 17:10:53 +08:00
    可以选择的:
    1,cygwin, scp, 先tar,gzip一下,然后到服务器端再解压缩。
    2,dropbox,在Windows和Linux都用同一个账号。dropbox会帮你自动同步,你直接在Windows下copy到dropbox文件夹下即可。
    wulin
        43
    wulin  
       2014-02-13 17:19:06 +08:00
    xshell的xftp,拖动就可以了,
    或者打zip包后rz /sz
    webjin
        44
    webjin  
       2014-02-13 20:57:08 +08:00
    xshell下直接按快捷键ctrl+alt+F就可以打开sftp传输界面,然后直接把文件拖进去~
    fcicada
        45
    fcicada  
       2014-02-13 22:12:16 +08:00
    git很方便,也适合管理
    jacky007wang
        46
    jacky007wang  
       2014-02-13 22:34:52 +08:00
    fabric
    zhouquanbest
        47
    zhouquanbest  
       2014-02-13 22:40:12 +08:00
    我一直使用rsync 繁多的选项应该能满足你的需求
    undozen
        48
    undozen  
       2014-02-13 22:42:34 +08:00 via iPad
    我会在远程主机上建 repo 和 prod 两个文件夹
    repo 里面 git init --bare
    然后z在 prod 里面 clone 跑起来
    lm902
        49
    lm902  
       2014-02-13 23:20:12 +08:00
    我是在本机配置好IIS8.5然后在服务器上wget下载最后tar -xvf解压
    ibcker
        50
    ibcker  
       2014-02-14 10:34:56 +08:00
    zip&sftp&uzip
    git
    scp
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2751 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 12:21 · PVG 20:21 · LAX 05:21 · JFK 08:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.