この質問に投票したいと思います: ローカル PC の作業ディレクトリとリモート ディレクトリを (FTP 経由で) 同期するためにどのアプリケーションを使用していますか?
FTP クライアントを使用して、常に編集する各ファイルを転送するのに飽き飽きしています。
この質問に投票したいと思います: ローカル PC の作業ディレクトリとリモート ディレクトリを (FTP 経由で) 同期するためにどのアプリケーションを使用していますか?
FTP クライアントを使用して、常に編集する各ファイルを転送するのに飽き飽きしています。
単純なケースでは、scp
またはftp
コマンド ライン プログラムを使用して、すべてのファイルをアップロードできる小さなコマンド ライン スクリプトを作成できます。すべてのファイルを圧縮して Web スペースに配置し、ssh でファイルを解凍する bash スクリプトを使用しています。bat
これは Linux の bash で簡単に実行できますが、Windows のファイルでも同様のことができると思います。
大規模な Web 開発プロジェクトの場合、コードをサーバー側のソース リポジトリにコミットし、Capistranoなどのツールを使用してリモート サーバーにデプロイします。これは、あらゆる種類の Web アプリケーション用の強力でフル機能のデプロイ ツールです。
Subversion を使用して、Web サイトのローカル コピー (変更を加えたもの) をライブ コピーと同期します。リビジョンをチェックインするたびに、SVN フック スクリプトがライブ サイトを自動的に更新します。ソース管理システム (SVN またはおそらく Git) を推奨しているのは誰ですか。それは私にとって非常にうまく機能します。
考慮すべき1つの代替案は、変更されたファイルのみを転送rsync
するLinuxプログラムです。scp
そしてそれらの場合でも、差分/パッチのようなアルゴリズムを使用して、ファイルの変更された部分のみを転送します。と同様scp
に、通常は SSH トンネルを介して実行されますが、安全ではない他の操作モードがあります。
サーバー上のファイルに直接アクセスする場合は、おそらくネットワーク マウントを使用する方が簡単です。これは、Linux/OS X (FUSE+ftpfs 経由) または Windows (FTP ディレクトリをネットワーク ドライブ、IIRC としてマップできます) で実行できます。ネットワークに公開されるサービスが 1 つ少ないことを意味するため、私自身は sshfs を好みます。
しかし、私は他の人たちに同意します-長期的にはSCMの方が優れています。
ftpアップロードは今では死んでいるはずです。ftpサーバーにsshできる場合は、scpとrsync-esshの方がはるかに優れています。Windows GUIクライアントがありますが、Cygwinコマンドラインを使用しています
これまでの回答はニーズに十分であるように思われますが(質問は変更をアップロードするだけで、ダウンロードはしないようです)、ftp / scp/rsyncベースのものは一方向の同期にのみ適しています。双方向同期(変更のアップロードとダウンロードの両方)が必要な場合は、リモートファイルシステムベースのソリューション、または(より適切には、IMO)git、svn、cvsなどの適切なリビジョン管理システムを使用する必要があります。 。
視覚的な同期を提供する FTP ツールを見ることができます。たとえば、Windows、Mac、または Linux では、CrossFTP を使用して一方向または双方向の同期を行うことができます。マスクとフィルターをサポートし、図に示すように結果をプレビュー/変更できます。代替テキスト http://img509.imageshack.us/img509/9417/picture1t.png
ファイルを直接操作している場合は、FTP サイト上のファイルを操作するためのネイティブ サポートを備えたテキスト エディターを確認する必要があります。UltraEdit (Windows) と BBEdit (Mac) は、私のお気に入りの 2 つです。
ftp でなくても、subversion に移行する良い機会かもしれません。