紹介#
Git-ftp は、git をバージョン管理システムとして使用する ftp アプリケーションであり、git の変更に基づいて更新が必要なファイルのみをアップロードして、トラフィックと時間を節約することができます。
インストール#
Debian 系の場合、次のコマンドを実行するだけです:
sudo apt install git-ftp
他のバージョンでは、https://github.com/git-ftp/git-ftp/releasesで詳細を確認し、解凍して実行するだけです。
使用方法#
Config の追加#
git プロジェクトの.git/config
に直接追加することができます:
[git-ftp]
url = ftp.example.net
user = ftp-user
password = secr3t
または、git コマンドを使用して追加することもできます:
git config git-ftp.url ftp.example.net
git config git-ftp.user ftp-user
git config git-ftp.password secr3t
Config パラメータの詳細#
git config git-ftp.url ftp://ftp.example.net:8010/path
ftp アドレス
git config git-ftp.user ftp-user
ftp ユーザー名
git config git-ftp.password secr3t
ftp パスワード
git config git-ftp.syncroot path/dir
同期するローカルディレクトリ
git config git-ftp.remote-root htdocs
リモートディレクトリ
詳細はこちらを参照してください -> manual
同期#
すべてのファイルを初期同期するには、次のコマンドを実行します:
git ftp init
その他の使用方法は非常に簡単で、git 内でファイルをコミットした後、次のコマンドを使用します:
git ftp push
これにより、リモートディレクトリに同期されます。ftp 内には、ファイルのコミットバージョンを記録するための.git-ftp.log
ファイルが生成され、ローカルの git と比較して更新部分のみをアップロードします。
Hugo の同期#
元々、ブログは Caddy + git + hugo を使用して同期していましたが、VPS でこの 1 つのプログラムを実行するのは少し無駄だと感じました。偶然にも、バイドゥクラウドの仮想ホストが 1 年間 30 元で割引されていたので、仮想ホストに移動しました。
同期する場合、上記の内容に従って ftp を設定した後、./public
ディレクトリを.gitignore
ファイルから移動し、git-ftp.syncroot
のパスは$PATH_TO_YOUR_HUGO/public
である必要があります。その後、hugo -E
コマンドを使用して public ディレクトリ内のファイルを生成し、変更をコミットした後、git ftp push
コマンドを使用して同期することができます。
2019-9 に typlog に切り替えました
2023-7 に xlog.app に切り替えました