Web開発者の日常

主にプログラミング関連。たまに日常も綴ります。

バージョン管理システムの導入

time 2011/07/02

現在開発中のWebアプリは3名で開発していてそこまで大規模ではないのですが、バージョン管理システムに興味を持ったので導入してみることに。

バージョン管理システムとは、ファイルの差分・変更を加えたユーザ・更新日時をデータベースで管理するシステムのことで、例えるなら、Wikipediaの履歴表示みたいなことができるシステムのことです。

って… 例えが微妙すぎるかな。 詳しくはWikipediaを見てください。

※リポジトリ:ファイルの変更内容を蓄積するデータベース

バージョン管理システムはリポジトリの管理の仕方で大きく2種類あり、

  • 集中型バージョン管理システム
  • 分散型バージョン管理システム

今回導入するのは分散型で、オフライン環境でも使え、中央にするリポジトリが使えなくなっても、容易に構成を変更できたりと柔軟性があることが特徴です。

分散型バージョン管理システムにもいくつか種類があり、主に

  • Git
  • Bazaar
  • Mercurial

上記の3つがあります。

GitはLinuxのKernel開発に使うために作られたそうで、Win環境での利用には向かないみたいなので、今回は除外。(Gitを提供しているリポジトリサービスではGithubが便利で、LinuxユーザではなくてもGistというブラウザから使える簡易リポジトリ(?が手軽に使えるのでアカウントを取っておくといいと思います… というより、このブログを観ている人はもうGist使ってますよねw)

今回は、Mercurialと集中型バージョン管理システムのSVN(Subversion)に対応しているbitbucketというリポジトリサービスを利用してみたいと思います。

bitbucketは、5名までの開発メンバーであれば無制限ですべての機能が使えるようです。(2011年 現在)


sponsored link

手順

  1. Mercurialのインターフェースとして使う TortoiseHg をインストール ←ローカル環境だけでバージョン管理する場合はここまででOK
  2. bitbucket でユーザ登録
  3. リポジトリとSSHで通信する際の鍵を生成、登録 ←HTTPSで通信する場合は不要
  4. 初めてのコミット、プッシュ

1.

↓にアクセスし、自分の環境に合ったTortoiseHgをダウンロードします。

http://tortoisehg.bitbucket.org/

インストールはデフォルトの設定で進めます。

(以後、Win環境の場合で説明します)

2.

bitbucketのユーザ登録をします。

https://bitbucket.org/

bitbucket.org

枠で囲んだ中のSign upを選択する

3.

bitbucketをSSHで使う方法は ここ (英語)に書いてあります。

WindowsではSSHの鍵を生成するのにPuTTYgenを使います。

↓下記のサイトからputtygen.exeをダウンロードします。(2つあるうちの上の方)

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

ダウンロードしたputtygen.exeを起動して、Generateをクリック!

ウィンドウの中でマウスをランダムに動かします(鍵生成に使う乱数の生成に必要)

プログレスバーが消えて「ssh-rsa」から始まる文字列が表示されたら鍵生成完了です。

Key commentにコメントを入れます(任意)

セキュリティのために秘密鍵を暗号化しておいたほうがいいでしょう。

Key passphraseとConfirm passphraseに同じパスフレーズ(≒パスワード)を入力します。

PuTTY Key Generator

コメントにはメールアドレスを入れるのが一般的なのかな(?

Save private keyで秘密鍵を保存します。名前は適当。

上の方に表示されているPublic key for pasting in to OpenSSH authorized_keys file:の部分にある「ssh-rsa」から始まる文字列を全てコピーして、

bitbucketの上部メニューから Account→ ページ下部のSSH keys

にあるテキストボックスにペーストしてAdd keyします。

SSH keys

bitbucketに公開鍵を登録

C:\Program Files\TortoiseHg\Pageant.exe を起動し、タスクバーのアイコンをダブルクリックしてウィンドウを開きます。

Pageant Key List

Pageant:秘密鍵のパスフレーズの入力を自動化してくれるソフト

Add Keyで先ほど生成した秘密鍵を読み込み、設定したパスフレーズを入力します。

Pageant: Enter Passphrase

秘密鍵のパスフレーズを入力

SSHで接続する場合は、このようにPageantを起動して秘密鍵を読みこませておく必要があります。(パソコンを起動する毎に)

4.

スタート→すべてのプログラム→TortoiseHg→TortoiseHg Workbench

(コンテキストメニューからでも開けます)

を起動して、ファイル→設定 を開き、左側のメニューからコミットを選択。

ユーザ名を「bitbucketのユーザ名<bitbucketに登録したメールアドレス>」に設定します。

TortoiseHg Setting

TortoiseHgの設定画面

 

bitbucketにログインして、上部メニューから Repositories→create repository で新規にリポジトリを作成。

作成したリポジトリのページの上部にあるClone this repositoryに書かれている「ssh://hg@bitbucket.org/リポジトリのパス」をコピーして、TortoiseHg Workbenchのメニューで ファイル→リポジトリをクローン を選択します。

HTTPSの場合は、「https://ユーザ名@bitbucket.org/リポジトリのパス」をコピペ。

クローン

bitbucketのリポジトリからClone

HTTPSの場合はクローンボタンを押すと、パスワードが求められるのでbitbucketのパスワードを入力します。(HTTPSで接続する場合、接続毎にこのパスワードを入力する必要があります)

HTTPS通信時のパスワード要求

bitbucketのパスワードを入力

※ここで、SSHの場合 TortoisePlink.exe が無いよー というエラーが出ることがあり(Windows Vista 64bitで確認)、TortoiseHgがインストールされている「C:\Program Files\TortoiseHg」へPATHを通すことで解決します。

コンピュータ右クリック→プロパティ でシステムを開いて、左側のタスクから システムの詳細設定 を選択し、環境変数を開きます。(Vistaの場合)

このユーザでしか使わないので、今回はユーザー環境変数のPATHに追加しました。

ユーザー変数の編集

ユーザー変数PATHに追加

※クローンに成功すると、ホスト名を登録するかダイアログが表示されるので、特に登録しない理由がなければ登録しておくといいと思います。

クローンしたときに選択した作業ディレクトリ(ターゲット)にファイルを追加し、コミットします。

コミット

ファイルを更新して枠で囲われたボタンをクリック

コミットはローカルで動いているMercurialに対して行われ、コミットしただけではbitbucketのリポジトリに反映されません。

bitbucketのリポジトリに反映させるには、プッシュします。

bitbucketのリポジトリへプッシュ

枠で囲んだアイコンをクリック

これで、反映されました。

プッシュの反対はプルで、中央のリポジトリの内容をローカルのリポジトリに反映します。

参考:WindowsでTortoiseHg 2.xとbitbucketを使う

使いこなせるかなぁ……

それでは、今回はこの辺で(`・ω・´)ノシ

追記[7/3]:↓公式のマニュアルを見つけました。

TortoiseHg マニュアルにようこそ!

sponsored link

ブックマーク



アーカイブ

2017年3月
« 5月    
 12345
6789101112
13141516171819
20212223242526
2728293031