Mercurialでバージョン管理を行う

mbed は、オンラインIDEでバージョン管理を行うことが出来ますが、オフラインで開発をしたい場合や、自分のプロジェクトファイルをバックアップしてローカルの環境に残しておきたい場合があると思います。

そのような場合に Mercurial(ソースコード管理ツール)でオンラインIDEにあるソースコードをローカル環境に clone したり、逆にローカル環境で変更したコードをオンライン環境に commit することが出来るので大変便利です。ここでは、それらの方法を簡単に説明します。

Mercurial のインストール

こちらのページから最新版のソフトウェアをダウンロードしてインストールします。ここでは、Mac版を例にして説明しますが、使用方法は他のホストでも同じ時だと思います。

プロジェクトを clone する

mbed のプロジェクトを clone するのはとても簡単です。まず、clone したい code ページを開きます(commit または publish されている必要があります)。 プロジェクトの code ページ右側の Repository toolbox の下部に Cone repository to desktop: というテキストボックスがあるので(hg clone … で始まる文字列)、この内容をコピーします。

/media/uploads/MACRUM/hg_clone.png

コマンドラインツール(Mac の場合は、ターミナル)を開き、適当な作業用ディレクトリを作成します。その作業ディレクトリ内で、先ほどコピーした文字列をペーストします。

$ hg clone https://MACRUM@developer.mbed.org/users/MACRUM/code/armcc_info/

これで、ローカルの作業ディレクトリ配下にプロジェクトがコピーされました。

/media/uploads/MACRUM/hg_clone2.png

Information

'hg clone' 実行時に表示される 'warning: developer.mbed.org certificate with fingerprint...` が気になる場合は、こちらの情報を参照して下さい。

変更点を commit する

ローカルでの変更を mbed のオンライン環境に commit します。

まず、config ファイルに適切な username を指定する必要があります。以下のコマンドで、エディタが開きますので、username = の部分に mbed.org のユーザ名を指定します。

$ hg config --edit

/media/uploads/MACRUM/hg_username.png

続いて、以下のコマンドで変更点を commit します。

$ hg add
$ hg commit -m "Fix compiler maro name"
$ hg push

以下のようにパスワードが要求されるので、mbed.org のパスワードを入力します。問題が無ければ、mbed オンライン環境に変更が反映されます。

/media/uploads/MACRUM/hg_commit.png

hg の log コマンドで、commit ログが表示されます。

/media/uploads/MACRUM/hg_log.png

オンライン環境で変更を確認する

プロジェクトの code ページの History タブを見ると、変更点が commit されていることが分かります(commit メッセージが typo ってますが、ご了承ください)。

/media/uploads/MACRUM/hg_mbed_log.png

オフライン環境でビルドする

上記の手順でローカル環境にコピーしたコードはバックアップとして使用する事が出来ますが、ビルド用の Makefile や IDE プロジェクトファイルが含まれていないので、ビルドすることが出来ません。 実は、オンライン IDE の export 機能を使ってエクスポートしたファイルには、Mercurial の管理情報が含まれています。そのため、エクスポートしたプロジェクトファイルをオンライン環境に commit するには、上記「変更点を commit する」以降の手順を実施することで簡単に行うことが出来ます。

プロジェクトのエクスポートの手順は、こちらをご覧下さい。

以上です。


Please log in to post comments.