MPLABXでGitを利用してみた

　こんにちは。最近PICのコードを書くことが増えました。１人で作業しているわけではないので、他者とコードをシェアするということと、今後複数人で管理する可能性があることから、他人と開発するバージョン管理等も出来たほうが便利だということでGitを導入しようと思いました。
　
#1 Gitを使えるサービスを調べてみた
　Gitが利用できるサービスは僕が知っている限り以下があります。
### Github（https://github.com/）
 世界最大のソフトウェアのコード管理ツールです。主に、プロジェクト開発で利用しているひとが多いです。
 
### Bitbucket（https://bitbucket.org/）
　世界最大級のソフトウェアのコード管理ツールです。（Githubに同じ）
　
## GithubとBitBucketの違い
　Githubは「他人とコードを共有する」というところに優れています。そのため、コードを秘密に管理するプライベートリポジトリが基本的に有料です。課金する制度としては、プライベートリポジトリの数によって課金することが主流です。
　対してBitbucketは、お金がないプロジェクトが秘密で管理したいコードを管理するのに特化しています。基本的にどのリポジトリもプライベートリポジトリに出来、それを何人で管理するのかというところで課金されます。５ユーザまでは無料で使えます！
　
#2 とりあえず使ってみた
## 2.1 IDを作る
　今回はお金が全く無いので、問答無用でBitbucketを利用します。
　https://bitbucket.org/
　
　とりあえず、IDとパスワードを作成。
　![スクリーンショット 2016-02-12 17.01.14.png](https://qiita-image-store.s3.amazonaws.com/0/81253/9d3c3017-b5e3-a5d9-f7d1-d59a62cba9e1.png "スクリーンショット 2016-02-12 17.01.14.png")

　ちゃんとverifyが来ました。（やったね！）
　
## 2.2 レポジトリを作成する
　こんな感じの画面が出てくるので、指示通りに作る。
　![スクリーンショット 2016-02-12 17.03.57.png](https://qiita-image-store.s3.amazonaws.com/0/81253/6182dcde-82be-1cab-77b1-b24fafbab41d.png "スクリーンショット 2016-02-12 17.03.57.png")
![スクリーンショット 2016-02-12 17.04.09.png](https://qiita-image-store.s3.amazonaws.com/0/81253/0e8ea371-a928-9c4c-6f9a-f9c6413ee2fe.png "スクリーンショット 2016-02-12 17.04.09.png")

はい、出来ました！

## 2.3 MPLABXとBitbucketを接続する
　ちょっとここから、少し面倒です。Bitbucketはアクセスするためにhttpsでアクセスする方法と、sshでアクセスする方法があります。今回は、鍵を作るのが面倒なのでhttpsで接続します。（もちろん今回のはデモなので）
　　まず、MPLABXを起動します。今回はgit-testというプロジェクトを作成して、予めnewmain.cを作成しておきます。
　　![MPLABX.png](https://qiita-image-store.s3.amazonaws.com/0/81253/91296c69-10a9-fc3d-8c6d-fbc80251e32c.png "MPLABX.png")

　git-testのプロジェクトの上で、右クリックをします。Versioning->Initialize Git Repositoryを選択します。
![initialize.png](https://qiita-image-store.s3.amazonaws.com/0/81253/89e59764-1bfe-01c8-0ad7-ec2f6cbf7d89.png "initialize.png")


　Initialize Git Repositoryをするフォルダを選択します。イニシャライズするからといってファイルが削除するわけではありません。ので、そのままOKして基本的には大丈夫です。
　次にgit add -> git commit までします。
　![gitadd.png](https://qiita-image-store.s3.amazonaws.com/0/81253/deb13673-132b-0321-5acb-8abab23a1782.png "gitadd.png")
git add

![gitcommitc.png](https://qiita-image-store.s3.amazonaws.com/0/81253/b99a1545-4e0b-2076-37c8-5a9ab1614d5e.png "gitcommitc.png")
git commit click

　![gitcommitcomment.png](https://qiita-image-store.s3.amazonaws.com/0/81253/62b0f6a6-7352-5dcf-59f7-027dbfabd68c.png "gitcommitcomment.png")
git commit comment

　git pushをします。
　![gitpush.png](https://qiita-image-store.s3.amazonaws.com/0/81253/c86fdd9d-3bd6-07da-2253-2f2542925be7.png "gitpush.png")

　push先のURLを取得します。
　Bitbucketの「私はゼロからスタートします」の中にあるhttpsから始まるURLを選択します。
　![url.png](https://qiita-image-store.s3.amazonaws.com/0/81253/d06c6361-220b-ee8f-3b0a-372c759a3345.png "url.png")
　MPLABXに戻って、URLとIDパスワードを入れます
![idpass.png](https://qiita-image-store.s3.amazonaws.com/0/81253/41919170-21e9-b984-7fb3-706b1c1eacfd.png "idpass.png")

今回はmasterブランチしかないので、masterブランチを選択します。

![master.png](https://qiita-image-store.s3.amazonaws.com/0/81253/9c5c94b1-e9c7-9c20-e676-239386ef5244.png "master.png")

次の画面もOKします。するとpushされます。
![あ.png](https://qiita-image-store.s3.amazonaws.com/0/81253/aa08159b-70e1-481b-8d5e-b86d9291becb.png "あ.png")

その上で、bitbucket上のtestリポジトリのソースを確認すると、ちゃんとpushされています。
![スクリーンショット 2016-02-12 18.13.44.png](https://qiita-image-store.s3.amazonaws.com/0/81253/1029b642-a041-22be-9c47-a1b06896eca2.png "スクリーンショット 2016-02-12 18.13.44.png")


#2 まとめ
　MPLABXでGit使うとき、GUIで出来るのはメリットかもしれないですが、自分自身はCUIで今まで使っていたので少し面倒だと思いました。
　組み込みの世界で、コードシェアリングは何を使っているかわからないのですが、svnとか使っているところもあるみたいです。
　個人的にgitしか使ったことないので両者ともなんとも言えないのですが、バージョン管理を導入していない所があれば導入すると、リモートとローカルにデータが残るのでバックアップとしても使え便利です。
　今回触れていないですが、バージョンを下げることも可能です。
　ともかく、gitおすすめです！
　　　
#3 問い合わせ先
　ここやばいんじゃないとか、ミスとか質問あれば是非是非メールまたはコメントください！
　akira.kashihara@a-dawn.net
　
#4 改訂履歴
2016年2月12日　新規