.php に特定の文字列が入っていた場合に git commit を失敗させる pre-commit hook のサンプル

インストール方法

$ cd /path/to/git_repo/.git/hooks
$ wget https://gist.githubusercontent.com/wokamoto/d9fa955004231c63a175/raw/71c011ec700a8d36d4e362fb09739b3333b2f434/pre-commit.keyword-check.sample
$ mv pre-commit.keyword-check.sample pre-commit
$ chmod +x pre-commit

これで、php ファイルに ‘鼻くそ’ という文字列が入っている場合に git commit を失敗させることができます。

どうしても、鼻くそが入ったまま commit したい場合は

$ git commit --no-verify

共有サーバで git を使う

coreserver は、これでできたよ

$ tar xvfz git-1.8.0.1.tar.gz
$ cd git-1.8.0.1
$ ./configure --prefix=$HOME/local
$ gmake
$ gmake install

~/local/bin にインストールされるので .bash_profile に export PATH=$HOME/local/bin:$PATH を追加してパスを通しておくのを忘れずに

最新版の tar ボールはここから取ってきて、coreserver に送ってね
Downloads – git-core – Git – the stupid content tracker – Google Project Hosting

[WordPress ] サイトのソース管理を git で行う(簡略版)

.gitignore として、WordPress のルートに以下を作成

wp-content/uploads/
wp-content/upgrade/

GitHub に置いてある WordPress 用の .gitignore を流用しても可
https://github.com/github/gitignore/blob/master/Wordpress.gitignore
# こっちは、コアソースをすべて対象外にしてくれる ( @miya0001 thx )

git リポジトリの作成とファーストコミット

$ cd /path/to/wordpress
$ git init
$ git add .gitignore 
$ touch wp-content/uploads/.gitignore; git add -f wp-content/uploads/.gitignore 
$ touch wp-content/upgrade/.gitignore; git add -f wp-content/upgrade/.gitignore 
$ git add *
$ git commit -m "first commit"

複数マシンからアクセスしやすいように bare リポジトリを作成

$ git clone --bare /path/to/wordpress /path/to/git/wordpress.git

クライアントで、サーバ example.com から git リポジトリを取得

$ git clone ssh://example.com/path/to/git/wordpress.git wordpress

# example.com には ssh 接続できるようにしておくこと

クライアントで、修正したファイルをサーバの bare リポジトリに push

$ git add *
$ git commit -m "modified hogehoge"
$ git push

サーバで、bare リポジトリから pull

$ cd /path/to/wordpress
$ git pull /path/to/git/wordpress.git