サーバー上のコードを直接「指先」で操る。Sublime Text × SFTPで実現する爆速開発環境
こんにちは。開発環境の最適化に命を燃やすエンジニアです。
多くのエンジニアが「ローカルでコードを書き、GitでPushし、サーバーへPullして反映する」というフローに疲弊しています。デバッグのために一行書き換えるだけで数分かかる……そんな非効率な「儀式」を、今日で終わりにしましょう。
今回は、Sublime Textの最強プラグイン「SFTP」を使い、ローカルのフォルダとリモートサーバーをシンクロさせる方法を伝授します。まるでサーバー上のファイルが、自分のPC内にあるかのように直接編集できる。この「物理的距離」を消滅させる快感を、ぜひ体験してください。
—
なぜ「SFTPプラグイン」なのか?
VS CodeのRemote SSHも素晴らしいですが、Sublime TextのSFTPプラグインが真価を発揮するのは「ローカルの快適な環境を維持しつつ、サーバーの状態を完全に掌握できる」という点です。
この手法の本質は、「手元のエディタがサーバーのファイルシステムをリアルタイムに監視し、保存と同時に転送を行う」という点にあります。ビルドプロセスが重いサーバーや、Dockerコンテナ内での直接編集が必要な環境において、この「即時性」は開発速度を劇的に向上させます。
—
ステップ1:SFTPプラグインの導入
Sublime Textのパッケージ管理ツールである「Package Control」を使います。
1. `Ctrl + Shift + P` (Macは `Cmd + Shift + P`) を押し、コマンドパレットを開きます。
2. `Package Control: Install Package` を選択。
3. リストから `SFTP` を検索し、インストールします。
これで、あなたのSublime Textはサーバーと「会話」する能力を手に入れました。
—
ステップ2:リモートサーバーとの「信頼関係」を構築する
ここで最も重要なのは、「SSH公開鍵認証によるセキュアな接続」です。パスワード入力などは論外。セキュリティと速度の両面から見て、鍵認証一択です。
まだ鍵を作っていない場合は、ターミナルで以下のコマンドを叩いてください。
SSHキーを生成(パスフレーズは任意、空でも可)
ssh-keygen -t ed25519 -C “your_email@example.com”
公開鍵をサーバーへ転送(これが認証の鍵となります)
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@your-server-ip
これで、パスワードなしでサーバーに入れるはずです。これが確認できたら、次の設定へ進みます。
—
ステップ3:SFTPの設定を「設計」する
プロジェクトフォルダをSublime Textで開き、右クリックして `SFTP/FTP` > `Map to Remote…` を選択してください。すると `sftp-config.json` というファイルが生成されます。
ここが心臓部です。以下の設定値を参考に、あなたのサーバー環境に合わせて記述してください。
{
“type”: “sftp”,
“save_before_upload”: true, // 保存時に自動で同期する(重要:爆速の核)
“upload_on_save”: true, // これにより「保存=デプロイ」が完結する
“host”: “your-server-ip”, // サーバーのIPまたはドメイン
“user”: “your-username”, // ユーザー名
“ssh_key_file”: “~/.ssh/id_ed25519”, // ステップ2で作った鍵のパス
“remote_path”: “/var/www/html/project”, // サーバー側の同期先ディレクトリ
“ignore_regexes”: [
“\\.sublime-project”,
“\\.sublime-workspace”,
“\\.git” // gitの管理ファイルは転送不要(混線防止)
]
}
アーキテクトの助言: `ignore_regexes` の設定は非常に重要です。 `.git` フォルダまでサーバーに送ってしまうと、サーバー側とローカル側のリポジトリ情報がコンフリクトを起こし、事故の元となります。
—
ステップ4:Hello Worldで同期の快感を味わう
設定が正しくできたか、確認しましょう。
1. プロジェクトフォルダに `test.txt` を作成します。
2. 中身に「Hello, Remote Server!」と書き込んで保存(`Ctrl + S`)します。
3. Sublime Textのステータスバーを注目してください。瞬時に `Uploading /test.txt…` というログが流れるはずです。
4. ターミナルでサーバーにログインし、確認します。
ssh user@your-server-ip
cat /var/www/html/project/test.txt
出力結果: Hello, Remote Server!
成功です。 今この瞬間から、サーバー上のファイルはあなたの指先一つで書き換わるようになりました。
—
最後に:賢い開発者であるために
この環境は非常に強力ですが、「本番環境に直接書き込んでいる」という事実を忘れてはいけません。
- 開発用サーバーでのみ運用する: 基本は開発環境に対してのみ行い、本番環境へのデプロイはCI/CDパイプラインを通すのが鉄則です。
- 同期ミスを防ぐ: 万が一のために、サーバー側でもGitによるバージョン管理を並行して行ってください。
これをマスターすれば、毎日のコーディングが劇的に楽になります。「コードを書いて、転送して、確認する」というループから解放され、あなたは「コードを書くこと」だけに集中できるようになるはずです。
さあ、あなたのエディタをサーバーの向こう側まで拡張して、最高にエキサイティングな開発ライフを送ってください!