-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
最好的远程编辑方案 : SFTP #88
Comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
写代码难免会碰到需要编辑服务器上的文件
传统的做法是 ssh 登录, 然后使用 vim 去编辑文件
这样的问题是太过麻烦, 无法使用像 sublime, vscode 这样强有力的编辑器, 而且传输文件还得用其他命令
之前想过很多方法来远程编辑文件, 比如 ftp, sshfs, samba, rsync, rmate
sftp 最大的优势
sftp 对服务器没有伤害
sftp 属于 ssh, 只要你可以使用 ssh 登录服务器, 就可以使用 sftp, 无需另外在服务器上安装和启动 ftp
这是非常关键的一个优势, ftp, samba, rmate 都需要专门在服务器启动服务, 但很多服务器开发者是没有权限开这样的服务的
而且如果是线上机器的话, 这种服务还要专门做权限控制, 非常麻烦, 因此 sftp 在这方面优势巨大
sublime 的 sftp 工作模式
安装 sftp 插件
对于项目来说 sftp 妥妥应该使用
sidebar
模式, 这种模式可以让我们像编辑本地项目一样编辑远程项目, 可以做项目查找等操作参考文档在这里
https://wbond.net/sublime_packages/sftp/sidebar#SublimeSFTP
sftp 工作流
SFTP/FTP
Sync Remote -> Local
更复杂 sftp 使用可以参照这里
sftp 的更新是通过对比 local 和 remote 的 改动时间(modification times) 来确定谁是最新的改动的
注意, 直接选择双向同步(Sync Both Directions)是不会删除文件的
samba
sftp 有个缺点是需要手动同步文件, samba 则不需要
但 samba 这种映射文件的方式也有明显的缺点, 如果网络不稳定, 每次保存都会是编辑器卡顿, 因为编辑器分不清自己是在 samba 文件系统还是在本地文件系统上工作
手动同步文件有一个优点是安全, 可控
samba 使用 445 和 139 端口,经常被运营商和平台商干掉,而 ssh 端口不可能被干掉, 之前 samba 还被爆过漏洞
ftp
ftp 远程编辑被众多编辑器或者插件支持
但需要安装 ftp server 和另外控制权限实在难以容忍
sshfs
windows sshfs 安装过于麻烦
linux 略显简单
unmount -f ~/workspace
sshfs 有性能问题
rmate
rmate 需要服务端操作而且只能编辑一个文件, 太傻了, 直接 pass
The text was updated successfully, but these errors were encountered: