Edited at

git-ftp インストールと設定(Windows)

More than 3 years have passed since last update.

https://github.com/git-ftp/git-ftp

Git のバージョン管理と連携して、最新のコミットを FTP でアップロードしてくれます。

動作環境)

・Git-1.7.8

・Windows XP, 7


インストール

参考)

https://github.com/git-ftp/git-ftp/blob/develop/INSTALL.md

Git Bash で下のコマンドを実行してください。

cd ~

git clone http://github.com/git-ftp/git-ftp git-ftp.git
cd git-ftp.git && chmod +x git-ftp
cd /bin/
ln -s ~/git-ftp.git/git-ftp git-ftp

1行目でユーザディレクトリに移動。

C:\Users[ユーザ名]\ (Windows 7 の場合)

5行目で git-ftp へのシンボリックリンクを作成しています。

これでインストール作業は完了。

正しくインストールされているか、まずは確認しましょう。

"git ftp" と入力して、とりあえず [Enter] を押してください。

> git ftp

git-ftp <action> [<options>] <url>

上記の表示が出たら、OKです。


設定

Git リポジトリのあるディレクトリに移動します。

Git Bash で下のコマンドを実行します。

git config git-ftp.[固有名称].url ftp://[ドメイン名][:ポート番号]/[FTPで接続されたディレクトリからの相対パス]/

git config git-ftp.[固有名称].user [ユーザ名]

git config git-ftp.[固有名称].password [パスワード]

git config git-ftp.service.url ftp://domain.com/html/application/

git config git-ftp.service.user admin
git config git-ftp.service.password xxxxxxx

※)url の注意

FTP で接続したときに、自動的に "/var/www" の位置にいる場合、

上記のURLのパスは、"/var/www" を省略してください。

誤:

git config git-ftp.service.url ftp://domain.com/var/www/html/application/
正:
git config git-ftp.service.url ftp://domain.com/html/application/

最初にファイルをアップロードするときは "init" コマンドを使います。

上記の「固有名称」(ここでは service) を -s の後につけます。

git ftp init -s service

FTP でアップロードされたディレクトリに ".git-ftp.log" が作成されます。

2回目以降は、Git で更新されたファイル差分のみを "push" コマンドでアップロードします。

git ftp push -s service

なお、Git で編集中のファイルがあるとアップロードするときに必ずエラーになるので commit は終えておいてください。

初めて git-ftp を使うときは、テスト用のリポジトリでアップロードしてみることをお勧めします。

アップロードに失敗したときは、"-v" で詳細な情報を "-vv" (v 2つ) でさらに詳細な情報を確認できます。

git ftp init -v -s service

私の場合、サーバ側で FTP の PASV モードがうまく設定されていなくて、何度も接続に失敗しました。エラーが起こる場合は、-vv で確認してみてください。