FTP経由でかなり大きなテキストファイル(Web開発用のCSSファイル)に小さな変更を加えることがよくあります。インターネット接続が非常に遅いため、非常に苦痛なプロセスです。
ファイルの1文字だけを変更した場合でも、ファイル全体がサーバーに再アップロードされるまで、しばらく座って待つ必要があります。
リモートコンピューターでホストされているファイルをローカルコンピューターで編集できる方法はありますか。ファイルを保存するとき、変更されたファイルの部分のみをアップロードしますか?
編集:現時点では、FTPクライアントをどのように使用しているのかはっきりしていません。基本的に、WinSCPを使用してSFTP経由でリモートファイルを開きます。WinSCPはそれをtmpフォルダーに保存し、Sublime Textを起動して、編集を開始します。保存をクリックすると、WinSCPがファイルを自動的に再アップロードします。ファイルをコンピューターに永続的に保存することはありません。すべてWinSCPの一時フォルダーを介して行われます。そのため、この「ヒットアンドラン」タイプの方法で使用できるソリューションを探しています。
前のディスカッション
以前にこの質問をServerFaultに投稿しましたが、説明したように、gitなどの使用が提案されています。
gitまたは同様のバージョン管理ツールを使用すると、ファイルを保存するたびにコミットする必要がありますよね?それが自動的に実行できたとしても(つまり、Sublime Text保存ファイルでCtrl-Sを作成し、同時にgit pushを実行するマクロがある場合)、1時間あたり50〜100のCSSファイルの小さな編集を行う可能性があります。確かに私はスパムログアウトしたコミットログになってしまいますか?また、gitソリューションは柔軟性がありません。これは、編集しているファイルがgitリポジトリの一部であることに依存しているためです。
これまでに考えられる唯一の解決策は、rsyncを使用したある種のハッキングされたプロセスですが、それでも非常に面倒です。
- 必要なファイルを自分のコンピューターにダウンロードします(FTP / rsync / whatever経由)。
- (例)Sublime Textでファイルを開き、編集を開始します。
- バックグラウンドプロセスは、フォルダーのファイルの変更を監視しています。ファイルを保存すると、そのプロセスによってコンピューターからサーバーへのrsync操作が即座にトリガーされ、ファイルの変更された部分が転送されます。
ただし、リモートファイルまたはディレクトリパスを手動で設定または指定する必要があります。そうしないと、ローカルのrsyncスクリプトがファイルのrsyncの場所を認識できないため、この方法はまだ柔軟性がありません。この方法では、即座にランダムファイルを参照し、それを開いて、FTPクライアントのように保存することはできません。
このメソッドには、アップロードの進行状況バーのような目に見えるフィードバックもありません。