git:publishing
文書の過去の版を表示しています。
Gitで公開
ウェブコンテンツをGitを通して公開する方法。
サーバ上に設置したgitリポジトリへpushすると同時に、最新のリビジョンをドキュメントルートにチェックアウトするような設定にすることで、ローカルからpushするだけでリリースできるようになる。さらにリポジトリで本番リリースのリビジョン管理もできる。
負荷分散のため複数のサーバにリリースする場合や、アプリケーションの場合は、Capistrano等のデプロイツールを使った方が良いだろう。
サーバ側準備
- サーバ example.paulownia.jp
- リポジトリ /var/git/example.paulownia.jp.git
- ドキュメントルート /var/www/example.paulownia.jp/htdocs
公開用のリポジトリを作る
$ cd /var/git/example.paulownia.jp.git $ git init --bare
フックスクリプト(post-receive)を有効にして修正、以下の1行を追加。
env GIT_WORK_TREE=/var/www/example.paulownia.jp/htdocs git checkout -f
クライアント側操作
ウェブディレクトリをgit管理下におく
$ cd example.paulownia.jp/htdocs $ git init
remoteリポジトリを追加(名前は何でも良いがoriginという名前にはしない方がいいだろう、ここではwebserverにした)
$ git remote add webserver ssh://nullpon@example.paulownia.jp/var/git/example.paulownia.jp.git
webserverにpushする。
$ git push webserver master
サーバ上で最新のリビジョンがchekcoutされ、ウェブに公開される。
pushする前にリリース範囲のcommitをまとめると良いだろう。
git/publishing.1317493590.txt.gz · 最終更新: 2011/10/01 18:26 by nullpon