さくらのVPSに git のリモートリポジトリを構築し、ローカルマシン(Mac)から利用するという想定で、環境を構築する手順をまとめてみました。
さくらのVPSは、「さくらのVPS (CentOS 6.3) にLAMP環境を構築」に基づいて、
「3.4. rootによるログイン、パスワードでのログインを禁止(サーバ側)」までの作業を終えているものとします。
まずは、gitのバージョン確認。
ちょっと古いような気もするが、まあよしとしましょう。
$ git --version git version 1.7.1
1. サーバ側(さくらのVPS 49.xx.xx.xx)
サーバ側で、空のリモートリポジトリ作成。
git init 実行時に sharedオプションを付けないと、複数人での開発ができなくなるらしいので注意しましょう。
$ sudo mkdir -p /var/git/test_repo.git $ sudo chmod -R 775 /var/git/ $ sudo chown -R root:wheel /var/git/ $ cd /var/git/test_repo.git/ $ git init --bare --shared=true Initialized empty shared Git repository in /var/git/test_repo.git/
2. ローカル側(Mac)
まずは環境設定を。
$ git config --global user.name "Aki Yoko" $ git config --global user.email "admin@example.com" $ git config --global -l user.name=Aki Yoko user.email=admin@example.com
ローカル側で、ローカルリポジトリを作成して、リモートリポジトリにpush。
今回は鍵を使っていますが、使っていない場合は「sakura」の部分を「admin@49.xx.xx.xx:10022」と読み替えてください。
$ cd ~ $ mkdir test_repo $ cd test_repo $ git init Initialized empty Git repository in /Users/akiyoko/test_repo/.git/ $ touch README $ git add . $ git commit -m "Initial commit." $ git remote add origin ssh://sakura/var/git/test_repo.git $ git push origin master Counting objects: 3, done. Writing objects: 100% (3/3), 214 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To ssh://sakura:10022/var/git/test_repo.git * [new branch] master -> master
最後に、適当なディレクトリで clone できるかどうかチェックしてみます。
$ cd ~ $ mkdir temp $ cd temp $ git clone ssh://sakura/var/git/test_repo.git Cloning into 'test_repo'... remote: Counting objects: 3, done. remote: Total 3 (delta 0), reused 0 (delta 0) Receiving objects: 100% (3/3), done.