Hatena::ブログ(Diary)

ヤルキデナイズドだった

Yarukidenized

2009-10-24

[]git で push したファイルを FTP 経由で差分アップロードするよ 03:31 git で push したファイルを FTP 経由で差分アップロードするよを含むブックマーク

リポジトリFTP 経由で push *ではない*です、念のため。

SSHrsync もないサーバに Web サイトをホストしてると更新とか面倒→ git で管理してFTP 経由で push すればいいじゃん!→できないじゃん!→フガフガ!

というわけでローカルのリポジトリに push → 更新されたファイルのみ FTPアップロードしてやることにしました。

手順

1. GitPython をインストール

gitファイルシステムPython から使えるようにしたラッパーライブラリ GitPythonインストールします。これは easy_install で一発。

easy_install gitpython
2. git-ftp.py をインストール

git-ftp.py は gitリポジトリから更新されたファイルだけをアップロードしてくれるステキなスクリプト。http://github.com/ezyang/git-ftp からチェックアウトするなりダウンロードするなりして適当な場所に置きます。

3. FTP の接続設定

Web サイト用のリポジトリの .git/ftpdata をどうにかこうにか編集。こんな感じに。

[ftp]
username=ore
password=ore_no_password
hostname=ftp.ore-no-suupaa-website.com
remotepath=/htdocs
repository=/home/me/website
4. コミット時に自動アップロードする設定

./git/hooks/post-commit をなんとかかんとか編集。

#!/bin/sh

/path/to/git-ftp.py
5. できた

これでコミット時にファイルを差分アップロードしてくれます。うーんステキ。

6. ていうか

Bazaar だと FTP 経由の push ができるので git にもがんばって欲しいと思った。

トラックバック - http://d.hatena.ne.jp/uasi/20091024/1256322715