世帯年収300万円以下限定!転職保証付

世界一優しいGitHubの使い方入門講座

作成: 2016.11.08 更新: 2018.07.24

あなたはサービスを作り出すエンジニアやデザイナーにとって一番身近なサービスである『GitHub』(ギットハブ)をご存知ですか?

本記事では

・GitHubを使うことのメリットやデメリット
・アカウント登録~実際の活用方法

など、IT初心者の方でも理解できるようにイチからとことん解説いたします。

GitHubをマスターして、エンジニアとのより深い意思疎通を、エンジニア・デザイナーの方は開発効率の向上を目指しましょう!

出典: GitHub Octodex

GitHubとは

GitHubは、ソフトウェア開発プロジェクトのバージョン管理を共有できるウェブサービスです。
2008年に設立したこのサービスは、1年も経たずに開発者の中で圧倒的な人気を博し、いまやIT業界でも必須のサービスになりました。
エンジニア以外にも、経営者やデザイナーなど、エンジニアと関わる機会の多い様々な業界で使用されています。

GitとGitHub

GitHub_image

出典 : GitHub

 

“Git”とは何なのでしょうか?

一言で説明すると、”Git”とはバージョン管理システムを指しています。
バージョン管理システムとはファイルに対して加えられていく変更について、

・「誰が」
・「いつ」
・「何を変更したか」

というような情報の記録をするシステムのことです。

このシステムは、過去のある時点の状態の復元現在と過去のファイルの内容の差分を確認することを可能にしてくれます。
“GitHub”は、その変更を共有するためのリモートに当たる部分を提供しているサービスなのです。

どのようなときに使うのか

GitHubは複数人でチーム開発する時に絶大な威力を発揮します。


複数人が同時に開発をしていると様々な変更が加えられていきますがGitHubを使用すれば「誰が、いつ、どのような目的で」行った修正なのかという情報も一緒に記録されるので、

・バグ修正
・機能の追加
・フィードバック

素早く、かつ簡単に行うことができるようになります。

そして、チーム全員がプロジェクトの進行状況を把握できるため、
サービスの開発の効率も従来に比べて圧倒的に上げることができるのです。

GitHubの使い方

GitHubの使い方を説明する前に、まずは大まかなGitHubの仕組みや流れについて説明します。

使い方の手順は以下の通りです。
一緒に手順を踏んでみましょう。

1) アカウントの登録
2) SourceTreeのインストール
3) リポジトリの作成
4) リポジトリを登録する

では早速取り掛かりましょう。

アカウントの登録

まずは、ユーザー登録をします。
GitHubのトップページにアクセスしましょう。

GitHub_form

出典 :  GitHub

このフォームにて、ユーザー名・メールアドレス・パスワードを入力してユーザーの登録をしましょう。
パスワードは、7文字以上にする必要があるので注意してください。

GitHubのプラン

GitHub_plans

出典 :  GitHub

続いて、プランを選択していきましょう。

無料プランと有料プランがありますが、大きな違いは、「インターネットで公開したくないプライベートリポジトリが作れるか作れないか」です。
無料プランでは、強制的にインターネットで公開されるのですが、有料プランだとプライベートなリポジトリを作成することができます。リポジトリについては、後ほど詳しく説明します。

初心者の方は、とりあえずは無料プランを選択して始めることをおすすめします。プランは後から変更することが可能です。

アンケート(任意)

GitHub_questionaire

出典 :  GitHub

 

次に、画像のようにアンケートのフォームが表示されます。
答えない場合は画像の指定通りリンクをクリックしてください。

しばらくすると、登録したメールアドレスにメールが届くので、そこに載っているURLにアクセスして本登録を完了させましょう。

SourceTreeのインストールをしよう

Gitは本来ターミナルでコマンドを打ち込んで使います。
SourceTreeはそれをグラフィカルで簡単に使えるようにしてくれるアプリケーションです。

今回はコマンドではなくSourceTreeを使うので、以下の手順に従い、SourceTreeをインストールしましょう。

①以下のリンクより、SourceTreeをダウンロードしてください。

クリックしてダウンロード

②ダウンロードしたディレクトリをダブルクリックし、表示されたアイコンをドラッグしてアプリケーションディレクトリに入れてください。

sourcetree

③アプリケーションディレクトリから、SourceTreeを起動してください。

以下のような画面が表示されるので、利用規約の方にチェックを入れましょう。下はチェックしなくても構いません。

sourcetree_download

終わったら「続ける」を押してください。

④GitHubのアカウントを登録してください。

続いて以下の画面が表示されるので、先ほど登録したGitHubのアカウントを入力しましょう。

sourcetree_account

TECH::EXPERT 東京・名古屋・大阪・福岡

プログラミング未経験からWebエンジニアとして転職成功まで導くスクール TECH::EXPERT は、挫折しない環境を提供いたします。すべて駅から通い安い便利な場所。いつでも質問できるメンター(講師)、一緒に頑張る同期がいるから頑張れる。そんな教室を是非見にきてください!

リポジトリを作成しよう

登録が完了したら、リポジトリを作成します。作成する前に、リポジトリについての説明をします。
少し難しいですが、非常に重要な部分なので頑張って理解しましょう。

リポジトリって何?

github_ripository

リポジトリ(repository/レポジトリ)とは訳すと「貯蔵庫」や「容器」などの意味になります。
IT用語でファイルの状態変更の履歴を残しておく場所として定義されます。

例えば、ソースコードそのものや、誰がどのように編集したのかといった履歴が保持されています。

”リポジトリとは、ファイルやディレクトリの状態を記録する場所です。保存された状態は、内容の変更履歴として格納されています。変更履歴を管理したいディレクトリをリポジトリの管理下に置くことで、そのディレクトリ内のファイルやディレクトリの変更履歴を記録することができます。”

引用元 : サルでもわかるGit入門

リポジトリの種類

Gitのリポジトリは、リモートリポジトリとローカルリポジトリの2種類に分けることができます。

① リモートリポジトリ

リモートとはローカルの反対で、インターネットを通じて操作するものを指します。
GitHub_RemoteRepository

リモートリポジトリとは、GitHubなどを利用してインターネット上においておくリポジトリのことです。

リモートリポジトリから複製したリポジトリを複数人の作業者のPCにおき、リモートリポジトリとローカルのリポジトリの同期を通じて、

それぞれに保管されているお互いのコミットを同期していくことで、作業を進めていきます。(下図参照)

GitHub_RemoteRepository_2

ローカルリポジトリ

ローカル環境にあるディレクトリのリポジトリのことです。
バージョンを管理するためには、管理したいディレクトリにリポジトリを作成する必要があります。

リモートリポジトリとローカルリポジトリ

リポジトリをリモートとローカルに区別することで、普段の作業をローカルリポジトリ上で行うことができます。
自分の作業した内容を共有したいときには、リモートリポジトリにアップロードすることで公開します。また、リモートリポジトリがあることで他の人の作業内容を取得することも可能です。

リポジトリの作り方

Gitでリポジトリを作成する方法として、新規に空のリポジトリを作成する方法と、既存のリポジトリを複製して作成する2つの方法があります。
今回は、 「sample」という名前で、空のローカル・リモートリポジトリを作成していきましょう。

ローカルリポジトリの作成

① SourceTreeを起動し、上部バーにある「新規リポジトリ」をクリックするとメニューが表示されるので「ローカルリポジトリを作成」をクリックしてください。

new_repository

②「リポジトリのタイプ」で「Git」を選択し、リポジトリを作成するディレクトリを、「保存先のパス」で指定して「作成」をクリックしましょう。

以下の画像では、Desktop上のsampleディレクトリのローカルリポジトリを作成しています。

github_repository

これで、ローカルリポジトリの作成は完成です。
以下のsampleと表示されている部分をダブルクリックしてください。

sourcetree_local

以下のような画面になっていれば成功です。

sample_local

リモートリポジトリの作成

① SourceTreeの右上にある「設定」ボタンをクリックしてください。

「設定」のアイコンがない方は以下の画像のように「>>」ボタンをクリックするとでてきます。

sourcetree_remote

② Remoteを選択し、「追加」ボタンをクリックしてください。

github_remote

③ 地球マークを押してください。

github_remote_2

④ 「新規リポジトリを作成」ボタンをクリックしてください。

github_remote_3

⑤ リモートリポジトリの名前を入力してください。今回は、「sample」と入力します。

なお、リモートリポジトリを非公開にする場合、料金が発生します。今回は「公開する」にチェックを入れておきましょう。

github_remote4

⑥作成されたリポジトリを選択して、OKボタンをクリックしてください。

github_remote_5

⑦SourceTree上で表示する名前を「sample」と入力し、OKボタンをクリックしてください。

github_remote_6

これでリモートリポジトリが作成できました!

便利な機能を使いこなそう

リポジトリが作れたら、あとはファイルを編集していくだけです。
GitHubの変更履歴を保存するという機能を有効活用するために最低限知っておきたい4つの知識を紹介します。

ここで紹介する知識を理解して、効率的な学習と開発を始めましょう!

コミット

これまでバージョン履歴と呼んできたものがコミットです。
開発をゲームに例えるなら、コミットはセーブポイントです。

任意の段階で現在のディレクトリの状況をコミットし(保存し)、あとでそのコミットまでディレクトリの中身を元通りにすることができます。

また、コミットは何個でも持つことができます。

プッシュ

自分のローカルリポジトリをリモートリポジトリと同期し、自分のコミットを反映させることプッシュと言います。

プル

プッシュでは自分が行った変更をリモートリポジトリに同期させます。しかし、複数人で開発している場合は自分以外の作業者が変更をプッシュする場合があります。

すると自分のローカルリポジトリの状態とリモートリポジトリの状態が変わってしまいます。このとき、リモートリポジトリの変更をローカルリポジトリに同期させることプルといいます。

下図は、プルとプッシュを含めたGitによるバージョン管理の全体図です。

git_push_and_pull

ブランチ

ブランチとはGitのバージョン管理の仕組みで、現在のコミットから分岐した作業履歴を残すことができるというものです。

はじめは「master」ブランチのみがリポジトリに存在していますが、ここからあたかも別の歴史に分岐するように、ブランチを増やしていくことができます。

github_branch

masterブランチ

リポジトリに最初のコミットを行うと、自動でmasterという名前のブランチが作成されます。

 

ブランチを利用した開発の例

ブランチを利用すると、同じリポジトリの中で複数の変更を同時に進めることができます。

また、一度分岐したブランチは元のブランチと結合して一つのブランチにすることができます。

これを利用して、多人数で作業する際に簡単に役割分担ができます。

例えば、とあるアプリケーションの開発において、masterブランチからAさんはフォロー機能を、Bさんはコメント機能を、Cさんはお気に入り機能を作るためにそれぞれのブランチを作ります。

すると、それぞれ別のブランチで作業するので、互いに影響し合ってエラーが起こるといったことがありません。

Aさんが作業を終了し、元のブランチに作業したブランチを結合すると、元のブランチのアプリケーションにはフォロー機能が追加されます。

同じように残りの2人もブランチを結合すれば、コメントやお気に入り機能もついたアプリケーションになるというわけです。

gihub_branch_development

マージ

その名の通り、ブランチとブランチを結合することを指します。

あるブランチは、そのブランチが分岐したブランチに統合される場合がほとんどです。

例えばmasterブランチにtestブランチをマージするとき、両方のブランチでのコミットを含んだマージコミットが作成されます。(下図参照)

github_merge

そのコミットがmasterブランチ最新のコミットとされます。

Githubからのファイルダウンロード方法

Githubからのファイルダウンロード方法に関しては、以下の記事にまとめております。

さらに理解を深めたいのであれば是非ご覧ください。

【開発者必見】githubからのファイルダウンロード方法

まとめ

いかがでしたか?
本記事では、 GitHubの概要から使い方・活用方法まで、GitHub入門レベルの知識をご紹介しました。

GitHubを使いこなせる様になれば、開発の効率化はもちろん、エンジニアやデザイナーとのコミュニケーションがより円滑にできる様になります。

今日からGitHubを使いこなして、初心者の壁を突破して快適なプログラミング生活を送りましょう!

TECH::CAMPについて

TECH::CAMPはあなたを最先端のスキルと知識を身に着けたテクノロジー人材に変えます。
講義形式で知識だけを学ぶのではなく、実際にサービスを作りながら実践的に学んでいきます。
独学では、わからないことを調べることに膨大な時間がかかりますが、TECH::CAMPは教室やオンラインでメンター(講師)へ質問し放題。

プログラミングが「なんとなく分かる」ではなく「形になるものを作る」にコミットします。
プログラミング以外もデザインやVR・3Dゲームなどコンテンツが多数あり、月額で全て受講可能です。
無料プログラミング体験会・説明会のお申し込みはこちら
お待ちしています!

テクノロジースクールTECH::CAMPで10年後も仕事に困らないスキルを身に着けませんか?

TECH::CAMPはこれからのテクノロジー時代で結果を出せる、次世代のビジネスパーソンを育成するスクールです。
体験会の申し込みへ

この記事を書いた人

mai8752