如何使用崇高通过SSH(How to use Sublime over SSH)

2019-08-22 02:44发布

我试图用崇高的文本2,当我在SSH连接到我的工作服务器的编辑,我难倒。 我发现这个http://urbangiraffe.com/2011/08/13/remote-editing-with-sublime-text-2/ (许多其他职位之间),看起来像它可能会帮助,但我不严格地遵守它,特别是与什么样的价值观我应该把在在第5行远程变量我设置“/用户/路径/到/本地/复制”到我的本地根目录下,但我不知道这是否是正确的,或者如果有更多的去做。 有什么想法吗? 我在OSX10.8

Answer 1:

有三种方法:

  • 使用SFTP插件(商业) http://wbond.net/sublime_packages/sftp -我个人推荐这个,作为设置公共SSH密钥通过密码后,它是安全,方便,值得每一分钱http://opensourcehacker.com/2012/ 24分之10/ SSH键和-无密码登录-基本换开发商/

  • 安装使用远程本地文件系统osxfusesshfs在评论中提到。 这可能是有点困难,这取决于OSX版本与UNIX文件系统的技能。

  • 哈克一起类似rmate使用某种本地守护进程(很困难,繁琐,但须藤兼容),这的确文件编辑通过远程隧道http://blog.macromates.com/2011/mate-and-rmate/

此外,在理论上,你可以在远程服务器上安装X11及以上VNC或X11转发运行崇高那里,但就没有一点这样做。



Answer 2:

您可以使用RSUB ,这是在TextMate的启发rmate 。 从描述:

RSUB是崇高的文本2的TextMate 2的“rmate”功能的实现,使得文件被使用SSH端口转发/隧道在远程服务器上编辑。

这里有一个很好的教程就如何正确设置它。



Answer 3:

我在Windows和已经使用4种方法:SFTP,WinSCP赋予齐奏Linux上的崇高文字与X11转发通过SSH到Windows(是的,你可以做到这一点不乱的configs,并使用一个免费的工具)。

第四种方式是最好的,如果你能在Linux机器上安装软件。

第四种方式:

MobaXterm

  1. 安装MobaXterm在Windows
  2. SSH从MobaXterm你的Linux机器
  3. 在Linux中,安装崇高文本3.下面是如何在Ubuntu
  4. 在命令提示符下,开始与崇高subl
  5. 而已! 现在,您可以在Linux上崇高的文本运行,但与它的窗口在Windows桌面上运行。 这是可能的,因为MobaXterm处理X11转发通过SSH给你,让你不必做任何事情时髦得到它去。 有可能是一个延迟的一个很小的量,但您的文件将永远是不同步的,因为你正在编辑他们的权利在Linux机器上。

注意:当调用subl如果抱怨的某些库 - 确保您安装它们从mobaxterm成功调用sublimetext。

如果你不能在你的Linux机器上安装软件,最好是统一。 为什么?

  • 免费
  • 它很快
  • 它是可靠的,并不在乎你使用的编辑器
  • 您可以创建自定义屏蔽列表

SFTP

安装:安装SFTP崇高文本包。 这个包需要许可证。

  1. 新建一个文件夹
  2. 打开它作为一种崇高的文本项目。
  3. 在侧边栏中,右键单击该文件夹并选择地图远程。
  4. 编辑SFTP-config.json文件
  5. 右键单击第1步中选择下载的文件夹。
  6. 当地工作。

在SFTP-配置,我通常设置:

"upload_on_save": true,
"sync_down_on_open": true,

这一点,除了SSH终端的机器给我一个相当无缝远程编辑体验。

WinSCP赋予

  1. 安装和运行的WinSCP
  2. 转到首选项(按Ctrl + Alt + P),并单击传输,然后添加。 命名预设。
  3. 将传输模式设置为二进制(你不想线转换)
  4. 设置文件修改为“没有变化”
  5. 点击旁边的文件掩码和设置您的包括和排除文件和文件夹(有用的,当你有一个git的/ .svn文件夹存在,或者你想排除生成产品被同步)的编辑按钮。
  6. 点击OK
  7. 连接到远程服务器,然后导航到相应文件夹
  8. 选择你的本地计算机上的空文件夹。
  9. 选择新创建的传输设置预设。
  10. 最后,按Ctrl + U(命令>保持远程目录最新的),并确保“上开始同步”和“更新子目录”进行检查。

从此,WinSCP赋予将让您的同步变化。

使用SublimeText本地文件夹的工作。 只要确保崇高文本设置猜测从正在编辑该文件的行结束符。

齐奏

我发现,如果源代码树是巨大的(大约几百MB了深刻的层次结构),则上述方法的WinSCP可能会有点慢。 您可以使用获得更好的性能齐奏 。 不利的一面是,齐奏不是自动的(你需要用一个按键来触发它),并需要一个服务器组件将你的Linux机器上运行。 向上的一面是,在传输是快得令人难以置信,它是非常可靠的,而忽略文件,文件夹和扩展非常容易安装。



Answer 4:

作为后续行动,以@ UBIK的答案,这里有三个简单的(一次性)步骤获得了“subl”命令在远程服务器上的工作:

  1. [ 本地 ]安装rsub使用的崇高文本包崇高包管理器
  2. [ 本地 ]执行以下bash命令(这将设立SSH隧道 ,这是RSUB的秘密酱):

     printf "Host *\n RemoteForward 52698 127.0.0.1:52698" >> ~/.ssh/config 
  3. [ 服务器 ]您的远程服务器上执行以下bash命令(这将安装“subl” shell命令):

     sudo wget -O /usr/local/bin/subl https://raw.github.com/aurora/rmate/master/rmate; sudo chmod +x /usr/local/bin/subl 

瞧! 您现在使用的通过SSH崇高的文本。

您可以从服务器上的东西,如打开崇高文本的示例文件subl ~/test.txt



Answer 5:

我在MAXOS,对我来说最方便的方法是使用Cyber​​duck的 ,这是免费的(也可用于Windows)。 您可以连接到你的SSH远程文件系统,并使用本地编辑器编辑您的文件。 什么Cyber​​duck的作用是下载到您的本地操作系统的文件到一个临时的地方,你的编辑器打开它。 一旦你保存文件,Cyber​​duck的自动上传到远程系统。 因为如果你使用的是本地的编辑器编辑远程文件看起来是透明的。



Answer 6:

您可以尝试的东西,我一直工作在所谓的“ 异物 ”。 它可以让你在崇高文本(或任何本地编辑真的)通过SSH连接打开文件/文件夹,并自动将更改同步到远程计算机。 它可以工作在几乎所有的POSIX系统(我自己用的是从OS X连接到Linux机器和编辑崇高的文本文件)。 它是自由和开放源码。 我喜欢的一些反馈。

欲了解更多信息:它基本上是用Python编写的一个Git / SSH混搭,可以让你在本地编辑器中编辑远程机器上的文件和文件夹。 您不必配置内核模块,你并不需要有一个持久连接,这都是自动的,它不会与现有的源代码控制,因为它使用的是乱worktree Git仓库干扰。 此外,因为它是建立在Git里,这是非常快,并支持可能改变两端,不像SSHFS / SFTP这将只是痛殴与旧的时间戳的任何文件的文件自动合并。



Answer 7:

您可以使用SFTP来挂载远程目录中的位置的机器上,然后简单地使用文本崇高往常一样的方式打开文件。

要使用SFTP挂载远程目录中,输入您的Linux文件管理器下面;

sftp://user@remote_box.com:22/home/user/code_directory

根据您的互联网速度虽然看起来很慢。 但是,这为我工作。



Answer 8:

我知道这是旧的方式,但我必须这样做,这是值得分享的一个非常酷的方式。

什么是必需的Conemu和WinSCP赋予 。 这些都是简单的说明

  1. 打开WinSCP.exe并登录到我期望的远程服务器(我有
    发现它安装之前请登录......)是非常重要的。

  2. 在首WinSCP赋予 - 两个设置改变。 选择资源管理器类型的接口而非指挥官 - 所以你看不到本地文件。 除非你想(但好像它会吸在这里)。 建立崇高为默认编辑器。

  3. 随着ConEmu开放,右键点击标签栏并选择选项Attach to... 。 一个对话框,将与您运行的应用程序打开。 选择,WinSCP赋予并选择确定。 ConEmu现在有显示的WinSCP您的远程文件打开的选项卡。

  4. 右键单击该选项卡的WinSCP,并选择New console... 。 当对话框打开后,输入您系统上的路径,以崇高的可执行文件。 在您按下Start ,在写着箱New console split选择单选按钮to right并设置百分比。 我通常选择75%,但你可以自定义此根据自己的喜好,它可以在以后改变。

    1. 现在你会看到在运行WinSCP赋予的权利的同一窗口崇高。 在崇高,从视图菜单中,选择Sidebar->Hide Sidebar ,然后砰一声,你现在有远程文件完全相同的方式像在本地-当然有自带的远程编辑什么的一些注意事项。 是的WinSCP虽然闪电快。

我有两个监视器 - 左监视器显示的Chrome浏览器,右显示器显示的代码编辑器。 此外,在ConEmu ,我创建另一个选项卡和ssh到我工作的网站上,这样我就可以做的事情一样运行gulpgrunt远程,也操纵在命令行中的文件。 认真加快发展。

下面是截图:



Answer 9:

这是最简单的方法,你必须预先设置SSH远程IP本地编辑文件,这活远程主机上

# issue on local box

sudo apt-get install sshfs   # on local host install sshfs ( linux )

# on local box create secure mount of remote directory

export REMOTE_IP=107.170.58.249 # remote host IP

sshfs myremoteuserid@${REMOTE_IP}:/your/remote/dir  /your/local/dir # for example

完成!

现在本地主机上刚开始编辑文件...当你列出本地目录可能不会列出任何东西,直到你cd到子目录或列出特定的文件...懒加载......这不会影响编辑的文件

subl /your/local/dir/magnum_opus.go # local file edit using sublime text

所以上述实际编辑在远程文件

/your/remote/dir/magnum_opus.go  # remote file on box $REMOTE_IP

对于OSX或Windows看到从一种民间此啧啧过上数字海洋



Answer 10:

类似osxfuse另一台Mac解决方法就是使用传输的FTP客户端软件恐慌,它允许您挂载远程文件夹为本地磁盘。 它支持SFTP,这是非常安全的。



Answer 11:

我一直在工作了一个名为GiySync 。 它仍然需要一些工作,但它是开源的,我每天都在使用它几年了。 我工作,也对本地OS X版本我叫GitSyncApp

现在它是OS X只,但它应该很容易添加对Linux的支持,以及可能的Windows了。

它的工作原理看文件系统事件和它使用的Git同步你的本地计算机和服务器上的项目文件夹。

我尝试其他解决方案,如OSX导火索,展开驱动器,传输,多种解决方案,使用rsync的,等他们都工作,对于小项目“OK”,但如果你有很多的代码工作,他们没有为我工作。

大量的文件系统选项做缓存以提高性能,这是罚款,直到它不是。 就像如果你与其他人的工作和别人改变了服务器上的文件。

我也遇到了问题,如果我是一个片状或速度较慢的网络,我想最终空文件上。 或者说没有同步文件,然后缓存变得奇怪; 希望你最近承诺。 使用Git,因为它在每一个提交的完整解决了这个问题。

两个附加功能:

  1. 你结束了一个承诺,每保存。 这不是超级有用的,但如果你要回去的时间就可以了。
  2. 它适用于任何文本编辑器。


Answer 12:

根据您的具体需求,您可以考虑使用BitTorrent的同步。 你家里的电脑和你的工作电脑上创建共享文件夹。 编辑您的家用电脑上的文件(使用卓异或任何你喜欢的),并在保存它们会自动同步。 BitTorrent的同步不依赖中央服务器中存储的文件(一拉Dropbox的等),所以你在理论上应该清楚任何问题,由于第三方存储敏感信息。



Answer 13:

对我来说真是棒极了一个解决方案 - Mac上的本地编辑,并有自动同步到远程计算机上的文件

  1. 请确保您有密码登录到远程计算机。 如果没有,请按照下列步骤http://osxdaily.com/2012/05/25/how-to-set-up-a-password-less-ssh-login/

  2. 创建在〜/库/ LaunchAgents / filesynchronizer.plist文件,包含以下内容:

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>filesynchronizer</string> <key>ProgramArguments</key> <array> <string>/usr/bin/rsync</string> <string>-avz</string> <string>/Users/USERNAME/SyncDirectory</string> <string>USERNAME@REMOTEMACHINE:~</string> </array> <key>WatchPaths</key> <array> <string>/Users/USERNAME/SyncDirectory</string> </array> </dict> </plist>

  3. 在终端窗口运行

    launchctl load ~/Library/LaunchAgents/filesynchronizer.plist

  4. 而已。 在〜/ SyncDirectory对任何文件的任何更改将被同步到〜/ SyncDirectory在远程机器上。 本地更改都将覆盖任何远程的变化。

这将创建一个监控SyncDirectory一个launchd的工作,每当有什么变化没有运行的rsync的目录同步到远程计算机。



Answer 14:

lsyncd似乎是不错的选择,在sshfs的方法。 如果使用“-delay 0”,它工作在实时。



Answer 15:

使用FileZilla中

这适用于Mac和Windows用户(我用在Mac)。 我已经使用了几种多年来所列出的答案,并发现, FileZilla中 ,我要SSH访问远程主机上编辑文件时,适合我的需要良好。 这也是快速设置。

  • 我配置新的服务器连接
  • 连接到服务器
  • 右键点击我要编辑和选择文件View/Edit

这带来了我的默认编辑器(崇高的),但它会与你安装任何编辑工作。

  • 有一次,我保存文件,Filezilla的自动提示我,问我是否愿意为“将该文件上传到服务器”,我点击“是”,然后它的更新。


文章来源: How to use Sublime over SSH