PSoC Creator でも GitHub がしたい (1) [PSoC]
PSoC Creator でも GitHub が使えるようになったら、便利に違いない。 今回は、どうやったら PSoC Creator プロジェクトと GitHub が共存できるかについて考えました。
PSoC Creator には、リビジョン管理の機能が無い
PSoC Creator は、 PSoC 3/4/5LP のファームウェア開発を行うための統合開発環境 (Integrated Development Environmend; IDE) です。 ファームウェア開発をする時には、当然、プロジェクトのリビジョン管理を行うべきですが、 PSoC Creator そのものには、リビジョン管理をするための仕掛けは入っていません。 これは、プロジェクトを管理する上では、マズイ状態です。
では、どの様にプロジェクト管理を行うかというと、 "Revision Control for PSoC® Creator™ Projects - KBA86358" に記述のある通り、ユーザが用意した "Revision Control System" で、必要なファイルだけ管理する方式が推奨されています。 ところが、 PSoC Creator と併用して、リビジョン管理を行うための具体的な方法について書かれた文書は見つかりません。 そこで、この文書では、 GitHub でプロジェクトを管理する方法を具体的に手順を追って解説します。
使用するソフトウェアは、 http://git-scm.com/ で提供されている Git Gui クライアントです。 なお、この記事では、 GitHub および Git の細かい使い方については、言及していませんので、ご了承ください。
新しいリポジトリを GitHub に作るには
GitHub の WEB サイトでリポジトリを作成すると、この図のように「次に何をすべきか」という指示が表示されます。 この記事では、このうち、 "Create a new repository on the command line" の手順に従った方法を git-gui を使って操作していきます。
いつも通りにプロジェクトを作成する
最初にいつも通りにプロジェクトを作成します。 ワークスペースを作成する場所は、どこでも構いません。 ここでは、マイドキュメントの "PSoC Creator" というディレクトリにワークスペースを新たに作成しています。 将来、このワークスペースがリポジトリとして機能します。
プロジェクトが作成できたら、適当な回路図と適当なソースコードを書いて Build しておきます。 これで、リポジトリに登録すべきファイルが、準備できました。
ワークスペースをリポジトリとして仕立てる
次は、作成したワークスペースをリポジトリに仕立て上げます。 このために使用するアプリケーションが Git Gui です。 "Create New Repository" をクリックして、リポジトリの作成を開始します。
リポジトリを作成する場所をたずねるダイアログが開くので、さきほど作成したワークスペースの場所を指定します。 ここで、 "Create" をクリックすると、ワークスペース内にリポジトリとして機能するのに必要なファイルがいくつか追加されて、ワークスペースがリポジトリとして機能するようになります。
.gitignore ファイルを用意する
Git Gui の画面が開いたら、 Unstaged Changes という所に多くのファイルが並んでいます。 これらのファイルが、リポジトリに Commit すべきファイルの候補です。 ところが、必要のないものが大量に並んでいますので、必要でないものはリストされないように設定ファイルを追加します。
ここで作成するのは、 ".gitignore" という名前のテキストファイルです。 これをリポジトリの直下に置きます。 内容は、以下の通りです。
# # .gitignore file for PSoC Creator 3.0 # # Log files *.log *.rpt # Temp directry *.cydsn/codegentemp/* # Results *.cydsn/DP8051/*
"Rescan" ボタンをクリックすると、ファイルの数が、ずいぶん少なくなりました。 それでも、まだ、沢山ありますね。 "Generated_Source" ディレクトリというのは、 PSoC Creator が生成したファイルなので、本来は Commit しなくても良いはずです。 しかし、割り込みハンドラなどでは、ユーザがこれらのファイルを直接変更する場合が有ります。 このような場合、 Commit することによってユーザの変更箇所を保存しなくてはなりません。 このような事情から、 "Generated_Source" ディレクトリは、リストされるようにしています。
必要なファイルだけ Commit する
PSoC Creator は、操作中に多くのファイルを生成しますが、プロジェクトに必須なファイルと言うのは、実はほんの数個に過ぎません。 このことは、 "Revision Control for PSoC® Creator™ Projects - KBA86358" にも記述されています。 次の作業は、必須ファイルを選択して、 Commit することです。 ここでは、以下の5個のファイルを選択して、メニュー "Commit"→"Stage To Commit" を選択して、 "Staged Changes" にこれらのファイルを移動します。
- .gitignore :
先ほど作成した、 Commit すべきでないファイルを示すファイルです。
- <Project Name>.cydsn/<Project Name>.cydwr :
"Design Wide Resource" と呼ばれるファイルで、 PSoC Creator でプロジェクトのさまざまな属性を保存するために使用されます。
- <Project Name>.cydsn/<Project Name>.cyprj :
使用しているコンポーネントなど、プロジェクトに関連した情報を格納したファイルです。
- <Project Name>.cydsn/TopDesign/TopDesign.cysch :
プロジェクトで使用している、トップレベルの回路図を格納したファイルです。
- <Project Name>.cydsn/main.c :
C のソースコードが格納された、トップレベルのファイルです。
この他に、ユーザが作成したソースファイルやヘッダファイルなどが有れば、いっしょに "Staged Changes" に入れておきます。 そして、 Commit ボタンをクリックすると、リポジトリに登録されます。
メニュー "Repository"→"Visualize All Branch History" を選択すると、リポジトリに記録された履歴が表示されます。 確かに、5個のファイルが、登録されているのが、わかります。
ひとまず、ローカルなリポジトリができたので、今日はここまで。
参考文献
関連文献
シリーズ最強!PSoC 3ボード+デバッグ・ボード: あのPSoCが生まれ変わった!アナログもディジタルも一新 (トライアルシリーズ)
- 作者: 古平 晃洋
- 出版社/メーカー: CQ出版
- 発売日: 2012/10/23
- メディア: 単行本
トランジスタ技術増刊 基板付き体験編ARM PSoCで作るMyスペシャル・マイコン 2013年 12月号 [雑誌]
- 作者:
- 出版社/メーカー: CQ出版
- 発売日: 2013/11/21
- メディア: 雑誌
開発編 ARM PSoCで作るMyスペシャル・マイコン (トライアルシリーズ)
- 作者: 圓山 宗智
- 出版社/メーカー: CQ出版
- 発売日: 2013/12/24
- メディア: 単行本
コメント 0