44
41

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

sublimeから、ssh経由で別のマシンのソースを編集する

Posted at

##はじめに

前に後輩と、vi, emacs, sublimeの比較話をしていたときに、ssh経由でファイル編集する方法がemacsであるよという話をし、そういえば、sublimeではできないのかと思い出した。
もちろんできます。ということでやってみよう。

##インストール

今回使うのは、SFTP Packageというもの、これはssh経由、ftp経由で指定したディレクトリをローカルとシンクし、アップロードできるというパッケージ。
Package Control: Install Packageから、SFTPで検索すればでてくるので、インストール。コマーシャル版だそうだけど、扱いはsublimeと同等で基本的にFreeで使える模様。

##使い方

まずローカルのディレクトリに、シンクさせるためのディレクトリを用意します。

$ mkdir sftpsync

サイドバーのプロジェクトフォルダを右クリックし、「SFTP/FTP」→「Map to Remote」を選択します。

すると、「sftp-config.json」という設定ファイルがプロジェクトフォルダのルートにできるので、このファイルを編集してサーバ情報などを設定していきます。

  1. {
  2. // The tab key will cycle through the settings when first created
  3. // Visit http://wbond.net/sublime_packages/sftp/settings for help
  4. // sftp, ftp or ftps
  5. "type": "sftp",
  6.  
  7. "save_before_upload": true,
  8. "upload_on_save": false,
  9. "sync_down_on_open": false,
  10. "sync_skip_deletes": false,
  11. "confirm_downloads": false,
  12. "confirm_sync": true,
  13. "confirm_overwrite_newer": false,
  14. "host": "example.com",
  15. "user": "username",
  16. //"password": "password",
  17. //"port": "22",
  18. "remote_path": "/example/path/",
  19. "ignore_regexes": [
  20. "\\.sublime-(project|workspace)", "sftp-config(-alt\\d?)?\\.json",
  21. "sftp-settings\\.json", "/venv/", "\\.svn", "\\.hg", "\\.git",
  22. "\\.bzr", "_darcs", "CVS", "\\.DS_Store", "Thumbs\\.db", "desktop\\.ini"
  23. ],
  24. //"file_permissions": "664",
  25. //"dir_permissions": "775",
  26. //"extra_list_connections": 0,
  27.  
  28. "connect_timeout": 30,
  29. //"keepalive": 120,
  30. //"ftp_passive_mode": true,
  31. //"ssh_key_file": "~/.ssh/id_rsa",
  32. //"sftp_flags": ["-F", "/path/to/ssh_config"],
  33. //"preserve_modification_times": false,
  34. //"remote_time_offset_in_hours": 0,
  35. //"remote_encoding": "utf-8",
  36. //"remote_locale": "C",
  37. }

上記のhost, user, remote_pathを自分の設定にして保存します。

注意:remote_pathはsyncしたサーバ側のディレクトリの絶対パスを指定してください。また、指定したディレクトリ下をすべてsyncするので、大量のデータが入っているディレクトリを扱う場合は注意が必要です。

次に、remoteにあるディレクトリをローカルに持ってきます。サイドバーにあるディレクトリを右クリック。SFTP/FTPのタブを開き、Sync Remote -> Local… を実行します。syncプロセスの後、サーバサイドのソースがローカルにsyncされます。後は編集し、上記、画面のUpload FolderやファイルごとにUpload Fileを行うことで、編集したデータをサーバサイドに反映することができます。

44
41
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
44
41

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?