読了・作業時間:30分
みなさん、こんにちは!
初学者チュートリアルの第3回として、今回はソースコードのバージョン管理ツールであるGitを紹介したいと思います。
本記事ではそのGitをGUI(Graphic User Interface)上で、視覚的に扱うことができる「Sourcetree」を活用した方法を紹介します。以下、バンバン専門用語を使っていきますよ 笑
対象者: Windowsユーザー
- 補足*1
- この記事は、教則本第3章1節・2節(P72~P87)の内容を前提とします。先に当該部分を読んでから、以下をお読みください。
-
この記事はWindows10環境を前提としています。
-
実際の画面をキャプションして説明している関係で、一部の情報を秘匿しています。ご容赦ください。
Gitとは何か?
先にさらっと バージョン管理ツール
という言葉を用いましたが、Gitとは一体何を行うツールなのでしょうか?
「バージョン管理」と検索をしてみると、
バージョン管理システム(バージョンかんりシステム)とは、コンピュータ上で作成、編集されるファイルの変更履歴を管理するためのシステム。 (出典: Wikipedia)
と出てきます。
イメージしてみてください。プロジェクトをチームで行っていくときに、AさんとBさんが同時に同じプログラムを対象に作成しないといけないとします(追加機能の作成等)。
状況をこまめに共有していかない
と、どちらか一方が加えた追加内容が反映されていない状態で新しいコードを作成してしまうと、ゴチャゴチャになってしまう恐れがありません。放っておけば、上書き合戦。かといって、毎回共有するのも細かい内容になりがちで大変。
そこで、役に立つのがバージョン管理システムです。プログラムの作成履歴を容易にこまめに記録し、共有することができます。特に関わる人数が大きければ大きいほど絶大な力を発揮するツールです。
特に オープンソース
(*2)のように世界的に各国のエンジニアが関わるプロジェクトでは、ほぼほぼ使われています。GitもPythonもオープンソースの一つですね。
実際にチームでプログラム開発をしないと、なぜ必要なのかはいまいちピンと来ないかもしれません。細かい説明は別の機会に譲りたいと思います。
- 補足*2
- ソースコードを商用、非商用の目的を問わず利用、修正、頒布することを許し、それを利用する個人や団体の努力や利益を遮ることがないソフトウェア開発の手法(出典:Wikipedia)
ホスティングサービスの利用
本記事では、Gitを扱うホスティングサービスとしてGithub(ギットハブ)やGitLab(ギットラボ)を扱う方法を紹介します(*3)。
このホスティングサービスにソースコードをアップロード(push)したり、最新版をダウンロード(pull)したりといった作業があります。通常はターミナル(コマンドプロンプト)上で、Gitコマンドを入力していきますが、慣れないうちはSourcetreeというアプリケーションを用いて試してみましょう。コマンドではなくGUIで視覚的に操作できるため、大変わかりやすく便利です。
この記事では、GitHubの「SengokuLAB/FirstStep」リポジトリをクローンすることを目指します!!
- 補注*3
- ホスティングサービスを使わずに自前でGitサーバーを構築し、ソースコード管理していくことも可能です。慣れてきたら、そちらもぜひ試してみてください。
SourceTreeの環境構築
Sourcetreeをダウンロードする
こちらのブログがよくまとめて下さっているので、参考にしてください。
Macユーザーの場合はPuTTYは必要ありません。ターミナルから公開鍵・秘密鍵を作成してください。
SourcetreeとGitHubを接続(準備編)1/5:PuTTYのダウンロード
SengokuLAB/FirstStepとSourcetreeとつなげる前に、SSH公開鍵の作成・登録、またプロジェクト(リポジトリ)への参加手続きが必要です。
公開鍵/秘密鍵についての詳細は省きますが、簡単にいいますと機密情報をやり取りする際の暗号のようなものです。公開鍵をGitHubに設置することで、手持ちの秘密鍵を持っている人(あなた)だけがクローンやプッシュを出来るようになります。
これを作成するためには、「PuTTY」とよばれる公開鍵/秘密鍵作成ツールをインストールすることが必要です。PuTTYのインストールはこちらを参照して下さい。
SourcetreeとGitHubを接続(準備編)2/5:PuTTYで公開鍵・秘密鍵の作成
インストールしたPuTTYを利用して公開鍵と秘密鍵を作成します。
まずSourcetreeを起動して、さらに「ツール」バーより「SSHキーの作成/インポート」を開いて下さい。
さらに、下図のように公開鍵/秘密鍵を作成して下さい。
画面に従うと、下のような画面になります。下図の指示に従って作業を続けて下さい。
ここまで出来ましたら、次にGitHubのページに公開鍵(秘密鍵ではありません!!)を登録します。
SourcetreeとGitHubを接続(準備編)3/5:公開鍵をGitHubに登録する
こちらのページにアクセスし、下図に従って作業して下さい。
以下のような画面に切り替われば成功です。SSHという種類の公開鍵が登録されていることがわかります。
SourcetreeとGitHubを接続(準備編)4/5:秘密鍵をPageantで登録する
次に、公開鍵のペアである秘密鍵をローカルに登録します。PuTTYの仲間であるPageant(PuTTYインストールの際に自動的にインストールされているはずです)を起動し、先ほど作成した秘密鍵を登録して下さい。
ここまでできれば、一連の鍵登録は終了です。
SourcetreeとGitHubを接続(準備編)5/5:GitHubリポジトリへの参加
準備編の最後に、GitHub上のプロジェクト(リポジトリ)へ参加します。GitHub登録の際に登録したメールアドレスに、プロジェクトへの招待メールが届いておりますので、確認の上リンクをクリックしてください。
すると以下のような画面が出て来るかと思いますので、「Accept Invitation」を選択してプロジェクトに参加して下さい。
以上で準備編は終了です。次の記事では、実際にこのリポジトリをクローンして、ブランチ作成のうえでプッシュするところまで説明します。どうぞよろしくお願いいたします。
執筆者:宮本