CentOS 5.6 に Git サーバー環境を構築する
SPECIAL
CentOS 5.6 に Git サーバー環境を構築する
プログラミング等で使用する版管理システムのひとつに Git というものがあります。
この Git を CentOS 5.6 にセットアップして、リモートで利用できる環境を整えてみたいと思います。
Git のインストール
CentOS 5.6 の場合、yum というコマンドを使用して Git をインストールすることができるようになっています。
このとき、rpmforge というリポジトリを使用することになりますので、予め CentOS 5.4 のシステムアップデート取得先としてリポジトリを追加する で記したような方法で、rpmforge リポジトリを利用できるようにしておく必要があります。
rpmforge を利用できるようになっていれば、次のようにして Git をインストールすることができました。
yum --enablerepo=rpmforge install git
このようにすることで、平成 23 年 8 月 8 日現在、Git 1.7.6-1.el5 がインストールされました。
SSH 経由で Git へアクセスするための準備
今回は SSH を使用して、Git リポジトリへアクセスできるようにしたいと思います。
今回は自分が使う程度の小規模な Git サーバーを想定しますので、Git を運用するためのアカウント "git" を作成して、接続の際にはこのアカウントを使って SSH 接続することにします。
git アカウントは、通常の Linux アカウント作成と同じで、次のようにして登録します。
useradd -m -d /home/git -s /usr/bin/git-shell git
ここで、シェルとして "/usr/bin/git-shell" を指定していますが、これは Git に関する操作のみに限定されたシェルになります。作成した git アカウントは Git リポジトリにアクセスするためだけに作成したアカウントなので、このシェルを指定して、不必要な権限を除くことができるようです。
また、今回は 公開鍵認証を用いて SSH へ接続する でもお話した公開鍵認証で接続しようと思うので、ここではパスワードは設定しないでおくことにします。
これで SSH による接続の準備ができました。
Git リポジトリデータは、今回作成した git アカウントのホームディレクトリ (/home/git) に配置することにします。
なお、公開鍵認証を用いて接続する場合には、接続元で作成した公開鍵を /home/git/.ssh/authorized_keys に登録してあげるようにします。
ベアリポジトリを配置する
Git を利用できるようにするためには、ワーキングコピーを持たないベアリポジトリを作成する必要があるようです。
これについては 空のベアリポジトリを作成する や 既存のワーキングコピーからベアリポジトリを作成する に記してみましたので、そちらを参考にしてみてください。
【目次】