プログラミングを勉強していると、GitHub(ギットハブ)という単語に出会うはずです。コードを共有したり、保存するための仕組みであることはなんとなくわかっているものの、初学者には難しく感じてしまうかもしれません。
そこで今回はGitHubがどうしてオススメされるのか、なぜGitHubを使った方が良いのかについてまとめました。
GitHubとはどんなサービスか
GitHubはソーシャルコーディングの場である。
GitHubが誕生したことで「ソーシャルコーディング」という言葉が広く普及することになりました。
ソーシャルコーディングとは、ソースコードをクラウド上で共有しながら製品を開発していく過程です。会社という枠組みにとらわれることなく、広く人材を活用することができます(ただし一般的には社内メンバーだけでGitHubを活用する方が多いとは思います)。
GitHubは効率的なプロジェクト管理のためのツールである。
GitHubは、Gitというバージョン管理システムのクラウドサービスです。
バージョン管理とは、ソースコードの編集履歴を記録することを指します。コードを書くだけでなく、レポートを書いたり、スライドを作る際にも、特定の段階でその資料を保存したいことがあると思います。あるいは修正する前のデータに戻したいこともあるでしょう。そのようなファイルの特定の段階をバージョンといいます。
そのため短期間にひとりで作成したり、使ったら二度と見返さないような資料はGitの適応外です。逆に複数人で数週間以上にわたって作成するドキュメントにおいて、Gitは威力を発揮します。
historoid
GitHubのアカウントを作成しよう

では早速GitHubにアクセスしましょう。
アカウント作成はとくに説明する必要もないので、さっと作ってしまいましょう。
プログラミングを学習する上で、これからいくつものサイトにアカウントを登録することになります。
そのためプログラミング学習専用のメールアカウントを作成しておくことをオススメします。
大学のメールアカウントは卒業後にも使えず、そのため名刺にも載せられません。
通販などの生活のために使うものとは別に、プログラミング学習用に長く使えるメールアカウントを作成すべきです。
プログラミング学習専用のメールアカウントを作成すべきだ、と言いましたがプロフィール画像も同様です。
今後Slack、Twitter、GitHubなどで情報交換することが増えます。そのためプロフィール用の画像も用意しておくと良いでしょう。
Gravatarはメールアカウントとプロフィール画像を結びつけるサービスを提供しています。Gravatarを介したプロフィール画像登録を行うサイトも増えつつあります。Gravatarに登録した画像を変更すれば、GitHubなどのサイトすべての画像が変更されます。
GitHubにサインイン
はじめてサインした段階では画面にはほとんど何も表示されていないと思います。
では早速GitHubを使ってみましょう。
試しにGitHubを使ってみよう
GitHubの機能にフォークというものがあります。
フォークを使うと、他の人がGitHub上にアップロードしたデータを自分のGitHubのデータとしてコピーすることができます。
まずは名著と名高い『ゼロから作るDeep Learning』の掲載コードをフォークしてみましょう。
まずは該当ページへ行きましょう。
https://github.com/oreilly-japan/deep-learning-from-scratchまでアクセスしてください。
フォークしてみる
フォークは簡単です。ワンクリックでOKです。

画面右上にあるForkボタンをクリックしましょう。

画面が切り替わり、データがコピーされ、フォークされています。
フォークが終わると自動的に自分のページへ飛びます。

画面の左上を見てください。私のアカウントはhistoroidですが、historoid/ deep-learning-from-scratchと表示されていることがわかります。
これであなたのアカウントに『ゼロから作るDeep Learning』に使われたコードがコピーされました。

チャプターのフォルダを選択すれば、その中身を見ることができます。
データのダウンロードも簡単
GitHub上にあるデータのダウンロードも簡単です。

右上にある「Clone or download」をクリックしましょう。

すると上記のようなウィンドウが開くので「Download ZIP」をクリックすると、あたなのパソコンにデータがダウンロードされます。
将来的にはコマンドでデータをダウンロード

Macには初期設定でTerminalというソフトがインストールされています。
あるいはiTerm2というソフトも人気です。
WindowsではコマンドプロンプトやPowerShellがこれらに該当します。
このようなコマンドで操作のためのアプリをCLI(command line interface)といいます。
CLIからの操作でGitHub上のデータをダウンロードできます。
git clone https://github.com/oreilly-japan/deep-learning-from-scratch
これがGitのコマンドです。git clon URL_xxxx
でOKです。簡単ですよね。
これでデータをダウンロードできます。
またデータを手元に持ってくるだけではなく、Gitで管理できる状態になっています。
まとめ
今回はGitHubの簡単な紹介でした。
- バージョン管理とは、ドキュメントの内容だけでなく編集履歴も保存することである。
- 個人的にバージョン管理をするだけならGitのみでOK。ただしGitのデータも個人のパソコンの中にあるため、Gitデータが消えれば編集履歴も消える。
- GitHubは、Gitデータをクラウド上(GitHub上)にアップロードできるサービスである。
- クラウド上にデータがあるため、自分のパソコンの故障を心配する必要がなくなる。
- さらにデータを共有する場としてもGitHubは有効である。
とりあえず今の段階では、GitHubにアカウントを作るだけでOKです。
まずは、GitHubというサービスがあることを覚えておきましょう。