Gitレポジトリの作成

2012/06/10

『改訂新版 基礎Ruby on Rails』 読者サポートページ > Rails本番環境構築ガイド

Capistranoによるデプロイの続きです。

ソースコードを管理するためのGitレポジトリをリモートマシンの作成するする手順を示します。

この文章の内容は、随時更新しています。最終更新日: 2012/06/010

以下、ローカルマシン(あなたのPC)で作業する場合はコマンドプロンプトを % で示し、リモートマシン(サーバ)で作業する場合はコマンドプロンプトを $ で示します。

Gitレポジトリの作成

Webサーバを運用するリモートマシンにGitレポジトリを作成します。

まずリモートマシンにgitユーザーを作成します。

$ sudo useradd -m -d /var/git git
$ sudo passwd git
$ sudo chmod 750 /var/git

railsユーザーをgitグループに加えます。/var/gitディレクトリの読み取り権限が与えられることになります。

$ sudo gpasswd -a rails git

ローカルマシンからあなたのSSH公開鍵をgitユーザーのホームディレクトリに転送します。

% scp .ssh/id_rsa.pub git@asagao.oiax.jp:~

gitユーザーでリモートマシンにログインします。

SSH公開鍵をauthorized_keysに加えます。

$ mkdir -m 700 .ssh
$ cat id_rsa.pub >> .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ rm id_rsa.pub

あなたの他にもレポジトリに書き込む人がいる場合は、その人の公開鍵を入手してauthorized_keysに加えてください。

空のレポジトリ asagao.git を作成します。

$ mkdir asagao.git
$ git init --bare --shared=0640 asagao.git

--shared=0640asagao.git レポジトリ全体のパーミッションを 0640 とするためのオプションです。グループ所属のユーザーには読み取り権限のみを与えています。

Gitの環境設定

まだ行ってなければ、ローカルマシンでGitの環境設定を行います。

% git config --global user.email "kuroda@example.com"
% git config --global user.name "Tsutomu Kuroda"

kuroda@example.comTsutomu Kuroda の部分は、あなたのメールアドレスと名前で置き換えてください。

エディタで ~/.gitignore を開き、レポジトリに加えたくないファイルやディレクトリを追加します。たとえば、あなたが使用しているエディタ、IDE、各種ツールなどが作るファイルやディレクトリを加えてください。

*~
/.DS_Store
/.rbenv-version
/nbproject

アプリケーション固有のファイルやディレクトリのうち、レポジトリに加えたくないものは、作業ディレクトリ直下の .gitignore ファイルに追加してください。

レポジトリにソースコードを登録

ローカルマシンのasagaoディレクトリに移動して、以下のコマンドを順に実行します。

% git init
% git add .
% git commit -m 'initial commit'
% git remote add origin git@asagao.oiax.jp:asagao.git
% git push origin master

git remote add コマンドで設定したURLを訂正する場合は、git remote set-url を利用してください。

目次