第46回 さくらVPSでGitのリポジトリを公開する方法

はじめに

githubの無料バージョンでは、容量に制限があるようなので、
さくらVPSにGitでリポジトリを公開するようにする。

全体の流れ

全体の流れは以下のような感じ。

  1. さくらVPSで、リポジトリを公開したいディレクトリを作成(ディレクトリを作ればよいだけだが、今回はそれ専用のユーザを作ってそいつのホームディレクトリを使うことにする)
  2. さくらVPSで、githubから、さくらVPSで公開したいリポジトリを bare として取得
  3. さくらVPSで、公開したいリポジトリである事をデーモンに知らせるファイル作成
  4. さくらVPSに git-daemon をインストール
  5. さくらVPSで git-daemon を起動

なお、git init などのgitコマンドはすでに使えるような環境になっていることが前提。

さくらVPSで、リポジトリを公開したいディレクトリを作成

公開するディレクトリを作成する。今回は専用のユーザを作ることにして、そいつのホームディレクトリを使うことにした。

useradd git_repos

さくらVPSで、githubから、さくらVPSで公開したいリポジトリを bare として取得

リポジトリを公開したいディレクトリで、(僕の場合は/home/git_repos)

# git clone --bare git://github.com/binagit/ruby_login_system.git

文法:

# git clone --bare githubの取得したいプロジェクトのリポジトリ

さくらVPSで、公開したいリポジトリである事をデーモンに知らせるファイル作成

git clone --bare で作られたディレクトリの中に git-daemon-export-okファイルを作成

# touch ruby_login_system.git/git-daemon-export-ok

文法:

# touch git-daemon-export-okのファイルの場所

さくらVPSに git-daemon をインストール

# yum install git-daemon

さくらVPSで git-daemon を起動

# /usr/libexec/git-core/git-daemon --export-all --enable=receive-pack --base-path=/home/git_repos &


文法:

# デーモンの場所 --export-all --enable=receive-pack --base-path=他コンピュータでリポジトリ取得時にルートとなるディレクトリ &

別のコンピュータからソースを取得

後は、このリポジトリからソースを持ってきたいコンピュータで

$ git clone git://さくらVPSのIPアドレス/ruby_login_system.git

デーモン起動時で、--base-pathオプションに、git_reposのホームディレクトリを指定しているので、
git cloneは、git_reposのホームディレクトリ配下で、ruby_login_system.git というディレクトリを見つけ、ソースを持ってきてくれる。

さくらVPS構築の基礎

サーバ構築の基礎はこちらのページにまとめました。
http://www.x-shenwu.net/~home_page/sakura_vps/