GitHubやBitBucketなど、Gitのリモートリポジトリを提供するサービスは数多くあるが、これらはリポジトリのサイズに制限があったりと何かと縛りが存在するため、今回は独自で用意したサーバー(CentOS7)にオリジナルのGitサーバーを構築する手順を紹介する。

Gitのインストール

まず、サーバーにGitをインストールする。

yum install -y git

ユーザーの作成

次にGitで使用するユーザーを作成する。
すでに一般ユーザーが存在するのであればそれを利用しても構わない。

useradd git

ユーザーを作成したらパスワードを設定する。

passwd git

最後に、作成したユーザーに切り替えておく。

su - git

リポジトリの作成

リポジトリは非公開ディレクトリに作成する。

mkdir /home/git/testrepo.git
cd /home/git/testrepo.git

git init --bare --shared=true

今回はユーザーディレクトリ内に用意した。

ローカル環境にクローン

後はローカル環境にクローンすればOK。

git clone ssh://git@{$hostname}/home/git/testrepo.git

リポジトリが空の場合は環境をクローンできないが、エラーが発生しなければ成功だ。

なお、秘密鍵を使ってSSH接続をする場合は、ローカル環境の「~/.ssh/config」に以下を追記してから上記コマンドを実行すれば良い。

Host xxx.xxx.xxx.xxx
    User git 
    Port 22 
    HostName xxx.xxx.xxx.xxx 
    IdentityFile ~/.ssh/gitserver/id_rsa