2012年2月21日火曜日

Gitlabってなんじゃ?(プロジェクト登録編)

前回はGitlabでユーザーを登録したので、今回はbookstoreという名前のプロジェクトを登録してみます。
最初はダッシュボードにはプロジェクトは表示されていないので、右側にある「New Project」ボタンをクリックします。するとプロジェクトの登録画面が表示されます。




プロジェクト名とリポジトリ内のパスとコードを入力します。ここではすべてbookstoreとします。
説明欄に適当に入力して、「Save」ボタンをクリックします。
この時点でこのサーバーのgitのリポジトリが作成されます。
また、「Save」を押下すると以下のような説明画面が表示されます。

この画面の上部赤の部分は設定不足などのエラーで、下部のグレーの部分はこれから行う必要のあることが記載されています。まず赤のエラーをなくすようにしてみます。
最初にSSHキーがないと書いてあるので、これを解消します。




githubと同様に、SSHキーはユーザーがgitリポジトリにアクセスする際に必要で、gitアクセスを行う端末のSSH公開鍵をgitlabに登録することで、リポジトリへのアクセスを許可する仕組みになっています。

ローカルの端末でSSHキーをrsaで作成し、公開鍵の中身をコピーします。
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub



次に、gitlabのヘッダ右端のアイコンから「My profile」を選択し、現在ログイン中の自分の情報設定画面を表示します。ローカルナビゲーションの右端に「Keys」というタブボタンがあるので、それを選択します。
ここにSSHキーを複数登録できます。「Add New」をクリックして、適当にタイトルをつけ、先程コピーした公開鍵の中身を貼付けて「Save」ボタンをクリックし、登録します。




ここで改めてbookstoreプロジェクトを表示してみると、先ほどの赤いエラーがひとつ減っていることがわかります。
次のエラーはまだリポジトリになにもpushされていない旨のエラーです。



それではコンテンツを作成し、マスタリポジトリにpushしてみます。
グレーの部分の指示通りにすすみます。

ユーザーの情報を設定し、
$ git config --global user.name "miura"
$ git config --global user.email  "miura@cloudpack.jp"


bookstoreディレクトリを作成しローカルリポジトリの作成を行います。
$ mkdir bookstore
$ cd bookstore/
$ git init


適当なファイルをローカルリポジトリにコミットし、
$ echo 'Hello World! books' > README.md
$ git add .
$ git commit -m 'initial commit'


先程gitlab上で作成したリモートリポジトリをoriginという名前で登録を行います。
$ git remote add origin git@176.34.51.75:bookstore.git


そのoriginに対して、変更をpushします。
$ git push -u origin master


完了したら再度プロジェクト画面をリロードしてみます。
すると先ほどの説明画面ではなく、プロジェクトの情報画面になっていることがわかります。
これですべて正常に登録が完了したことになります。





ローカルナビの「Files」をみてみるとリポジトリのファイルリストが表示され、さきほどコミットしたファイルがあるのを確認できます。


また、「Project」内の「Team」タブで登録済みのユーザーをこのプロジェクトへ参加させることができます。


これで、ユーザーとプロジェクトが登録でき、gitからの登録もでき、プロジェクトで使用することができるようになりました。

今後プロジェクトで試しに使ってみたいと思います。
今回は以上です。