GitHubとは?

GitHubとは?Gitとの違いを解説
Gitとはバージョン管理システムのこと
Gitは、プログラムなどを記述したソースファイルを管理するための「分散型バージョン管理システム」のことです。複数人で開発を行う際に、ファイルの変更履歴をすべて反映させ、簡単に管理できるのがGitの最大の特徴といえるでしょう。
Gitの具体的な機能は、下記のとおりです。
- ファイルの変更履歴を管理
- 過去のバージョンに戻せる
- さまざまなファイルを管理できる
- チームで作業を共有できる
Gitを使えば、「ある1つのファイルを2人で同時に編集してしまったために、先に編集した人の変更内容が消えてしまった」ということや「編集前の状態を記録するため毎回コピーしなければならない」ということがなくなります。
GitHubとはWebサービスのこと
Gitが「ファイルの変更履歴を管理するバージョン管理システム」であるのに対し、GitHubは「Gitの作業をチームメンバー間でやりとりできるWebサービス」のことです。
GitHubとは「Git」の「ハブ:拠点・中心・集まり」という意味で、Gitの仕組みを利用して、世界中の人々がプログラムのコードやデザインのデータなどを保存し、公開できるようにしたサービスです。
Gitをパソコンにインストールすれば、GitHubのサービスを利用できます。
GitHubに作成されたリポジトリ(保存庫のようなもの)は、基本的にすべて公開されますが、指定したユーザーからしかアクセスができないプライベートなリポジトリを作ることも可能です。
また、各プロジェクトにwiki(メモ書き)やタスク管理ツールなど、コラボレーションのための機能も充実しているのもGitHubの特徴です。
GitHubの用語をわかりやすく解説
GitHubを使うには、いくつかの用語の意味を理解する必要があります。正しく理解して、適切なGitHubの使い方をマスターしてください。
ローカルリポジトリ
ローカルリポジトリとはGitHubで共有するためのファイルを保存する場所で、自分のパソコン内に存在します。
開発者は、各自のローカルリポジトリで行った更新内容をリモートリポジトリで共有できます。
リモートリポジトリ
リモートリポジトリは、WebサービスであるGitHubに存在するファイルの保管場所です。
リモートリポジトリのファイルには、ローカルリポジトリの更新内容が上書きされます。
コミット
コミットとは、作成したファイルや更新情報をローカルリポジトリに登録する操作のことを指します。
ファイルを更新して保存すれば変更した内容が保存されますが、Gitに変更内容を登録するためには、必ずコミットを行う必要があります。
そのため、ローカルリポジトリでファイルを編集した後は最後に必ずコミットを実行するようにしてください。
プッシュ
プッシュとは、ローカルリポジトリで更新したファイルをリモートリポジトリにアップロードする操作です。
ファイル更新時にプッシュすると、ローカルリポジトリにコミットされた変更が GitHubのリモートリポジトリに送信されます。
チームで進めるプロジェクトのファイルを自分のパソコンで変更したときは、ほかのユーザーが更新されたファイルにアクセスできるように GitHubにプッシュする必要があります。
ブランチ
ブランチ(branch)とは1つのプロジェクトを分岐させることで、チーム内の機能追加、バグ修正など、ファイルやディレクトリの変更・更新を同時進行できるようにした機能です。
分岐したブランチは他のブランチへ影響を与えないので、同じローカルリポジトリでの並行作業が可能になります。
masterブランチ
masterブランチとは、リポジトリに最初のコミットを行う際に作成されるブランチのことです。2回目以降のコミットは、ブランチを切り替えるまでmasterブランチに追加されていきます。
GitHubを使ったチーム開発は、masterブランチを作成して行います。そもそも、親元のmasterブランチがないと、分岐したブランチを使えません。
マージ
マージとは、あるブランチで行った変更・更新の記録を別のブランチに適用することです。例えばバグ修正したブランチの記録を、機能追加を行ったブランチに適用することが可能です。
ブランチで行った作業内容をmasterにマージすることで、複数の更新情報をプロジェクトに反映できます。
なお、 GitHub のリモートリポジトリでマージを行ったら、結果をローカルリポジトリへ反映する必要があります。
クローン
GitHubのローカルリポジトリで作業を行っているとき、このローカルリポジトリ自体をローカルマシン上にコピーして配置することが可能です。この操作をクローンと呼びます。
コピーしたローカルリポジトリではファイルの更新作業ができますし、ファイルの更新内容をリモートリポジトリにプッシュすることも可能です。
プルリクエスト
プルリクエストとは、ローカルリポジトリにおける変更をほかの開発者に通知する操作のことです。
具体的には、機能追加や改修、作業内容のレビューを受けるとき、ほかの担当者が開発するファイルとマージするときに通知します。
ソースコードの変更箇所をわかりやすく表示させて、チームメンバーからフィードバックをもらうことも可能です。
インデックス
インデックスとは、ファイルの保管場所にコミットするためのファイルを登録することです。
ファイルの更新内容をプッシュすると、リモートリポジトリのファイル内容は直接上書きされるわけではありません。
ファイルの更新情報は、まずインデックスに登録された後に、リモートリポジトリに保管されます。
GitHubの使い方【導入~リモートリポジトリ作成まで】
GitHubを使うには、Gitをパソコンにインストールする必要があります。GitHubにプッシュする操作などは、Gitをインストールすると使えるようになる「Git Bash」というターミナル(黒い画面)で行うからです。
Gitのインストールと初期設定の方法はWindowsとMacとでほぼ共通しており、いずれもインストールはGitの公式サイトで行います。
なおMacの場合は、公式サイトにアクセスするだけで自動でインストーラーをダウンロードできます。
Gitのインストール方法について、以下の記事でOSごとに詳しく解説しているので参考にしてください。
Gitをインストールしてみよう!Windows/Macどちらも丁寧に解説
更新日:2023年10月10日
Gitをインストールしたら、GitHubを使う準備をしましょう。GitHubを使う前の準備は下記のとおりです。
- GitHubでユーザー登録する
- GitHubでリモートリポジトリを作成する
一つずつ見ていきましょう。
なお、GitHubを使う前の準備や使い方はWindowsとMacで違いはありません。
1.GitHubでユーザー登録する

まずはGitHub公式サイトにアクセスして、ユーザー登録をしてください。

「Username」「Emal」「Password」を入力します。

次に画像を見て、クイズに回答しましょう。登録したメールアドレスに認証のメールが届くので、確認の上「Verify email address」をクリックしてください。
GitHubから再度メールが届いて、アカウント登録は完了です。

2. GitHubにリモートリポジトリを作成する
次に、GitHub上のリポジトリ(リモートリポジトリ)を作成する方法を解説します。

前述の認証メールで「Verify email address」をクリックすると、上の画面に進みます。リモートリポジトリを作成するには、「Start a new project(新しいプロジェクトを開始する)」を選択してください。
次の画面で「Repository name」を入力します。「Description」にはプロジェクトや保管するファイルの内容を任意で入力しておきます。

「Public(公開)」「Private(非公開)」のいずれかを選択して「Create repository」をクリックすれば、GitHub上のリモートリポジトリが作成されます。
次の画面でURLが表示されていますが、このURLがリポジトリのアドレスになります。

このアドレスは、自分のパソコンなどローカル環境からリモートリポジトリにアクセスする際に使用します。
GitHubの使い方②【ファイル追加~プッシュまで】
続いて、Githubでローカルリポジトリを作成してファイルを追加しリモートリポジトリにプッシュする方法をご紹介します。
作業の流れは下記のとおりです。
- ローカルリポジトリを作成する
- ファイルを作成する
- 作成したファイルをリポジトリにコミット(登録)する
- 作成したファイルをリモートリポジトリにプッシュする
ローカルリポジトリを作成する
まずはローカルリポジトリを作成します。
ローカルリポジトリの作成は、下記の順番で行います。
ショートコードブロック
→
- ファイルを保管するディレクトリ(フォルダ)を作成する
- 作成したディレクトリをローカルリポジトリにする(初期化)
インストールしたGitのターミナル「Git Bash」を起動してコマンドを実行してください。

まずはターミナルで、ディレクトリを作成しましょう。
実行するコマンドの順番は下記のとおりです。$ mkdir github $ cd github $ mkdir pushtest $ cd pushtest
「git init」コマンドで、作成したディレクトリをローカルリポジトリにします。$ git init
以下のように表示されればローカルリポジトリの作成完了です、Initialized empty Git repository in ~
リポジトリの作成方法について、詳しく知りたい方はあわせてこちらの記事をご覧ください。

【Git初心者向け】リポジトリの作成からpushまでを解説
更新日:2023年10月10日
ファイルを作成する
次にファイルをディレクトリに作成します。ここでは「pushtest.txt」にしています。$ vi pushtest.txt pushtest.txtの内容 push test!
作成したファイルをローカルリポジトリにコミット(登録)する
ファイルを作成したら、「git add」コマンドでファイルをインデックスにコミット(登録)します。コミットすることでGitで管理する対象のファイルになります。
コミットする際に使うコマンドは下記のとおりです。$ git add pushtest.txt
以下の記事ではコミットする方法について、より詳しく解説しています。

はじめてのGit!コミット(commit)でファイルを登録してみよう
更新日:2023年10月10日
作成したファイルをリモートリポジトリにプッシュする
最後に、作成したファイルをリモートリポジトリにプッシュします。
送信する前に、「git remote」コマンドでリモートリポジトリにファイルを追加してください。リポジトリのURLは先程GitHubで作成したリポジトリのURLを指定します。$ git remote add origin https://github.com/ユーザーID/push_test.git
続いて「git push」コマンドでリモートリポジトリに送信を行います。以下のコマンドを実行します。$ git push origin master
ユーザーネームとパスワードを聞かれますので、それぞれGitHubのユーザーとパスワードを入力しましょう。成功したら下記のように表示されます。Counting objects: 3, done. Writing objects: 100% (3/3), 245 bytes | 245.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0) To https://github.com/takataka58/push_test.git * [new branch] master -> master
GitHubの使い方【応用編】
GitHubの基本的な使い方に慣れたら、応用編を理解してさらに便利に使いこなしましょう。
続いて、GitHubの応用的な使い方を解説します。
ブランチを作成してみる
ブランチを使えば、masterブランチから処理を分岐して開発を行えます。ブランチを作成するには、まずファイルを作成してローカルリポジトリにコミットしましょう。
次に「git branch」コマンドを実行してください。git branch [ブランチ名]
ここではブランチ名をbranch_testにしています。$ git branch branch_test
作成されたブランチは引数なしの「git branch」で一覧を確認できます。$ git branch * branch_test master
ブランチの作成や切り替えの方法については、以下の記事で詳しく解説しています。

【Git入門】ブランチ(branch)とは?メリットや使い方を解説!
更新日:2023年10月10日
Gitの設定内容を確認・変更する
Gitの設定内容を確認・変更する場合は、「git config」コマンドを使います。
git configで設定内容を確認したり、設定内容を変更する方法については、以下の記事で詳しく解説しています。

git configでGitの設定を変更・確認する方法を解説!
更新日:2023年10月10日
ファイルを比較する
「git diff」コマンドを使用すると、2つのファイルを比較して差分を確認できます。
例えばリモートリポジトリに変更したソースファイルをマージするとき、「変更内容が反映されているか」「他の担当者が編集した内容を消してしまってないか」などを確認するときにdiffを使用します。
git configの書き方は下記のとおりです。$ git config [種別] [設定項目] [変更内容(値)] <value>
Gitの設定はオプションでそれぞれの種別「system」「global」「local」に分けて設定できます。
git configでGitの設定を変更・確認する方法については、以下の記事で解説しています。

過去のファイルと比較しよう! git-diffの使い方を解説
更新日:2023年10月10日
リポジトリにtagをつける
「git tag」コマンドを使用すると、ファイルにタグをつけてわかりやすくすることができます。
例えばリリース時にコミットごとにバージョンを付けて管理したい場合(ver1.0 → ver1.1など)などにtagを作成します。git tagコマンドを使用することでタグを簡単に作成することができます。
git tagの書き方は下記のとおりです。# 注釈なしタグ git tag [タグ名] # 注釈付きタグ git tag -a [タグ名] -m [“コメント“]
tagは「注釈なし」コマンドと、簡単なコメントが付けられる「注釈あり」コマンドがあります。
git tagの詳しい使い方については、以下の記事で詳しく解説しています。

【Git入門】git tagとは?基本をわかりやすく解説!
更新日:2023年10月10日
サブモジュールを作成する
サブモジュールを作成すれば、外部のリモートリポジトリを現在の自分のリモートリポジトリにサブモジュールとして追加できます。
サブモジュールを作成するには、「git submodule」というコマンドを使います。
まず、ファイルを作成してリモートリポジトリにプッシュします。その後、外部のリモートリポジトリである「Sample」を「git submodule」コマンドで追加しましょう。$ git submodule add https://github.com/takataka58/Sample.git Cloning into ‘/Users/taka/sample/Sample’… remote: Counting objects: 7, done. remote: Compressing objects: 100% (4/4), done. remote: Total 7 (delta 0), reused 7 (delta 0), pack-reused 0 Unpackin: 100% (7/7), done.
現在のディレクトリに、リモートリポジトリの「Sample」が追加されています。$ ls -l Sample/ total 16 -rw-r—r— 1 taka staff 23 9 20 08:23 sample1.txt -rw-r—r— 1 taka staff 23 9 20 08:23 sample2.txt
このときに「git status」コマンドを使って現在の状態を確認してください。$ git status On branch master Changes to be committed: (use “git reset HEAD <file>…” to unstage) new file: .gitmodules new file: Sample
「.gitmodules」とリポジトリの「Sample」が追加されていることがわかります。
「.gitmodules」ファイルを確認してみると、サブモジュール名とURLの情報が記載されています。$ cat .gitmodules
[submodule “Sample”]
path = Sample url =<a href=”https://github.com/takataka58/Sample.git”> https://github.com/takataka58/Sample.git</a>
サブモジュールを追加したら「git commit」でプロジェクトをコミットするのを忘れないでください。$ git commit -m “git add Sample”
サブモジュールについては、以下の記事で詳しく解説しています。

これならわかる!git submoduleでサブモジュールを追加する方法
更新日:2023年10月10日
GitHub・Gitでファイルをダウンロードする方法
GitHubやGitのファイルは、パソコンにダウンロードして使用することが可能です。
続いては、GitHub上に公開されているファイルやGitで管理されているファイルをダウンロードする方法を解説します。
GitHub上でのダウンロード方法
まずはGitHubでファイルをダウンロードする方法を確認しましょう。
GitHubでファイルをダウンロードする際の大まかな手順は下記の通りです。
- GitHubにサインインし、キーワード検索
- 目的の公開プログラムを選択
- ファイルのダウンロード
最初、GitHubにログインすると左上に検索フォームがありますので、キーワードで検索を行います。
以下の画面のように、関連するファイルの一覧が表示されるので、選びましょう。
引用元:GitHub
ファイルを選んだら、右下の「Download ZIP」のボタンをクリックしてください。
ダウンロードされたファイルは解凍して使用しましょう。
Gitで管理されたファイルのダウンロード
Gitで管理されているファイルをダウンロードするには、「git clone」コマンドを使います。
Windowsの場合コマンドプロンプトを、Macの場合はターミナルを開いてコマンドを実行しましょう。$ git clone “url”
“url”には、GitHub上で検索したプログラムに表示されているURLをコピーして、コマンドプロンプトやターミナルに貼り付ければ完了です。
Gitでよく使うコマンドについては、以下の記事で詳しく解説しています。「あれ、このコマンドどうやって使うんだっけ?」となったらぜひ参考にしてください。