目次

<<序章

結局GITに乗り換えた話(GITだと自動デプロイができた)

意地でもサブバージョンを使っていた私ですが、GITを使うと自動デプロイ=コミット(厳密にはPUSH)すればホームページのデプロイができるということを知ってしもうたわけです。
しかも今はPS5の時代、GITもマウス対応(GUI対応)日本語対応といういたれりつくせりだったわけです。これは使わない手はない!
というわけで、サクラレンタルサーバ(標準GIT対応)で実施しましたが、たぶんWEBサーバーでやるならどこだろうと一緒だろうということで、備忘録的に残します。

簡単に仕組み説明

実際にやってみた

  既にホームページ公開しているディレクトリでも問題ありません。

% git init 

 BAREリポジトリ用のフォルダはどっこでもいいです。

% git init --bare

実行後はこんな感じ

% pwd
/home/[hogehoge]/bare
% ls -ltr
total 32
-rw-r--r--  1 [noname]  users   73 Sep 29 23:58 description
drwxr-xr-x  2 [noname]  users  512 Sep 29 23:58 info
drwxr-xr-x  2 [noname]  users  512 Sep 29 23:58 branches
drwxr-xr-x  4 [noname]  users  512 Sep 29 23:58 refs
-rw-r--r--  1 [noname]  users   23 Sep 29 23:58 HEAD
drwxr-xr-x  2 [noname]  users  512 Sep 30 00:03 hooks
drwxr-xr-x  7 [noname]  users  512 Sep 30 02:11 objects
-rw-r--r--  1 [noname]  users   66 Sep 30 02:27 config

このbareリポジトリにできた、hooksフォルダにbashを置いておくとgitイベントをフックしてくれるようですので、hooksフォルダに「post-receive」というファイルを作成します。

#!/bin/sh
cd [ホームページ公開用フォルダ]
unset GIT_DIR
git pull origin master

作成したファイルのパーミッションはフル権限(777)にします。
unset~~は、環境変数の読み込みを抑止するために必要なようです。まぁその辺はご自由にどうぞ。

% git remote add origin /home/[hogehoge]/bare

ちなみに、以下知っておくとリカバリできる。

[削除用]
% git remote rm origin
[確認用]
% git remote -v
[変更用]
% git remote set-url origin /home/[hogehoge]/bare


次にローカルPCのセットアップです。
素直に亀ちゃんを使います。
-インストールはとっても簡単なので割愛-

今までサブバージョンで管理していたフォルダを使うわけにはいかん(ような気がする)ので、さすがGIT用にフォルダを作成します。フォルダを作成したら、フォルダ内で右クリックをして「GIT クローン」を選択します。

あとは、サブバージョン風にコミットして、PUSHすればいいです。

そのままデプロイしたければ、PUSHする。



ここで問題発生。
パスワード毎回聞かれる問題というのが出てきました。だが、これは簡単になおる。ssh接続で、公開鍵暗号方式を使えば良い。


>>次章