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 を利用できるようにするためには、ワーキングコピーを持たないベアリポジトリを作成する必要があるようです。

これについては 空のベアリポジトリを作成する 既存のワーキングコピーからベアリポジトリを作成する に記してみましたので、そちらを参考にしてみてください。

 

目次