GitHubの使い方を画像つきで徹底解説・初心者でもすぐ使える!

GitHubの使い方がよくわからない……
GitHubの使い方について詳しく知りたいな

「GitHub(ギットハブ)」は、世界中のエンジニアや企業が開発を行う際に、プログラムのコードやデザインのデータを保存したり共有したりできるサービスです。

しかしプログラミングを始めたばかりの方のなかには、GitHubをどんなときに、どのように使うのかわからない方もいるのではないでしょうか。

ここではGitHubの登録方法から開発における便利な使い方までを、初心者にもわかりやすく解説します。

そもそもGitHubとは?Gitとの違いを解説

GitHubとは

最初に、そもそもGitHubとは何なのか、Gitとどう違うのかを解説します。

GitHubの使い方を学習する前に、確認しましょう。

Gitとはバージョン管理システムのこと

Gitは、プログラムなどを記述したソースファイルを管理するための「分散型バージョン管理システム」のことです。複数人で開発を行う際に、ファイルの変更履歴をすべて反映させ、簡単に管理できるのがGitの最大の特徴といえるでしょう。

Gitの具体的な機能は、下記のとおりです。

  • ファイルの変更履歴を管理
  • 過去のバージョンに戻せる
  • さまざまなファイルを管理できる
  • チームで作業を共有できる

Gitを使えば、「ある1つのファイルを2人で同時に編集してしまったために、先に編集した人の変更内容が消えてしまった」ということや「編集前の状態を記録するため毎回コピーしなければならない」ということがなくなります。

GitHubはエンジニアだけでなく、デザイナーやライターが原稿やイラストを共有して管理するのにも使われています。

GitHubとはWebサービスのこと

GitHubとはWebサービスのこと

Gitが「ファイルの変更履歴を管理するバージョン管理システム」であるのに対し、GitHubは「Gitの作業をチームメンバー間でやりとりできるWebサービス」のことです。

GitHubとは「Git」の「ハブ:拠点・中心・集まり」という意味で、Gitの仕組みを利用して、世界中の人々がプログラムのコードやデザインのデータなどを保存し、公開できるようにしたサービスです。

Gitをパソコンにインストールすれば、GitHubのサービスを利用できます。

GitHubに作成されたリポジトリ(保存庫のようなもの)は、基本的にすべて公開されますが、指定したユーザーからしかアクセスができないプライベートなリポジトリを作ることも可能です。

また、各プロジェクトにwiki(メモ書き)やタスク管理ツールなど、コラボレーションのための機能も充実しているのもGitHubの特徴です。

GitHubは、大きく「ローカルリポジトリ」で作業を行い「リモートリポジトリ」で管理を行います。

  • 自分のパソコン内に存在する「ローカルリポジトリ」
  • GitHubに存在する「リモートリポジトリ」

GitHubを使った開発は、ローカルでファイルを作成・更新し、リモートリポジトリにアップデートする、という流れで行います。

なおGitHubは基本的に無料で使えますが、個人や組織の開発で高度なコラボレーションが行えるプランなど、有料プランも用意されています。

GitHubの基礎知識については、以下の記事で詳しく解説しています。

GitHubとは何かわかりやすく解説!機能やメリットも簡単に紹介
更新日 : 2021年7月1日

GitHubの用語をわかりやすく解説

GitHubの用語

GitHubを使うには、いくつかの用語の意味を理解する必要があります。正しく理解して、適切なGitHubの使い方をマスターしてください。

ローカルリポジトリ

ローカルリポジトリとはGitHubで共有するためのファイルを保存する場所で、自分のパソコン内に存在します。

開発者は、各自のローカルリポジトリで行った更新内容をリモートリポジトリで共有できます。

リモートリポジトリ

リモートリポジトリは、WebサービスであるGitHubに存在するファイルの保管場所です。

リモートリポジトリのファイルには、ローカルリポジトリの更新内容が上書きされます。

コミット

コミット

コミットとは、作成したファイルや更新情報をローカルリポジトリに登録する操作のことを指します。

ファイルを更新して保存すれば変更した内容が保存されますが、Gitに変更内容を登録するためには、必ずコミットを行う必要があります。

そのため、ローカルリポジトリでファイルを編集した後は最後に必ずコミットを実行するようにしてください。

プッシュ

プッシュとは、ローカルリポジトリで更新したファイルをリモートリポジトリにアップロードする操作です。

ファイル更新時にプッシュすると、ローカルリポジトリにコミットされた変更が GitHubのリモートリポジトリに送信されます。

チームで進めるプロジェクトのファイルを自分のパソコンで変更したときは、ほかのユーザーが更新されたファイルにアクセスできるように GitHubにプッシュする必要があります。

ブランチ

ブランチ

ブランチ(branch)とは1つのプロジェクトを分岐させることで、チーム内の機能追加、バグ修正など、ファイルやディレクトリの変更・更新を同時進行できるようにした機能です。

分岐したブランチは他のブランチへ影響を与えないので、同じローカルリポジトリでの並行作業が可能になります。

masterブランチ

masterブランチとは、リポジトリに最初のコミットを行う際に作成されるブランチのことです。2回目以降のコミットは、ブランチを切り替えるまでmasterブランチに追加されていきます。

GitHubを使ったチーム開発は、masterブランチを作成して行います。そもそも、親元のmasterブランチがないと、分岐したブランチを使えません。

マージ

マージとは、あるブランチで行った変更・更新の記録を別のブランチに適用することです。例えばバグ修正したブランチの記録を、機能追加を行ったブランチに適用することが可能です。

ブランチで行った作業内容をmasterにマージすることで、複数の更新情報をプロジェクトに反映できます。

なお、 GitHub のリモートリポジトリでマージを行ったら、結果をローカルリポジトリへ反映する必要があります。

クローン

クローン

GitHubのローカルリポジトリで作業を行っているとき、このローカルリポジトリ自体をローカルマシン上にコピーして配置することが可能です。この操作をクローンと呼びます。

コピーしたローカルリポジトリではファイルの更新作業ができますし、ファイルの更新内容をリモートリポジトリにプッシュすることも可能です。

プルリクエスト

プルリクエストとは、ローカルリポジトリにおける変更をほかの開発者に通知する操作のことです。

具体的には、機能追加や改修、作業内容のレビューを受けるとき、ほかの担当者が開発するファイルとマージするときに通知します。

ソースコードの変更箇所をわかりやすく表示させて、チームメンバーからフィードバックをもらうことも可能です。

インデックス

インデックスとは、ファイルの保管場所にコミットするためのファイルを登録することです。

ファイルの更新内容をプッシュすると、リモートリポジトリのファイル内容は直接上書きされるわけではありません。

ファイルの更新情報は、まずインデックスに登録された後に、リモートリポジトリに保管されます。

GitHubの使い方【導入~リモートリポジトリ作成まで】

GitHubの使い方

GitHubを使うには、Gitをパソコンにインストールする必要があります。GitHubにプッシュする操作などは、Gitをインストールすると使えるようになる「Git Bash」というターミナル(黒い画面)で行うからです。

Gitのインストールと初期設定の方法はWindowsとMacとでほぼ共通しており、いずれもインストールはGitの公式サイトで行います。

なおMacの場合は、公式サイトにアクセスするだけで自動でインストーラーをダウンロードできます。

Gitのインストール方法について、以下の記事でOSごとに詳しく解説しているので参考にしてください。

Gitをインストールしてみよう!Windows/Macどちらも丁寧に解説
更新日 : 2021年7月1日

Gitをインストールしたら、GitHubを使う準備をしましょう。GitHubを使う前の準備は下記のとおりです。

  1. GitHubでユーザー登録する
  2. GitHubでリモートリポジトリを作成する

一つずつ見ていきましょう。

なお、GitHubを使う前の準備や使い方はWindowsとMacで違いはありません。

1.GitHubでユーザー登録する

引用元:GitHub

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

引用元:GitHub

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

引用元:GitHub

次に画像を見て、クイズに回答しましょう。登録したメールアドレスに認証のメールが届くので、確認の上「Verify email address」をクリックしてください。

GitHubから再度メールが届いて、アカウント登録は完了です。

引用元:GitHub

2. GitHubにリモートリポジトリを作成する

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

引用元:GitHub

前述の認証メールで「Verify email address」をクリックすると、上の画面に進みます。リモートリポジトリを作成するには、「Start a new project(新しいプロジェクトを開始する)」を選択してください。

次の画面で「Repository name」を入力します。「Description」にはプロジェクトや保管するファイルの内容を任意で入力しておきます。

引用元:GitHub

Public(公開)」「Private(非公開)」のいずれかを選択して「Create repository」をクリックすれば、GitHub上のリモートリポジトリが作成されます。

次の画面でURLが表示されていますが、このURLがリポジトリのアドレスになります。

引用元:GitHub

このアドレスは、自分のパソコンなどローカル環境からリモートリポジトリにアクセスする際に使用します。

GitHubの使い方②【ファイル追加~プッシュまで】

Gitでできること
GitHubの使い方

続いて、Githubでローカルリポジトリを作成してファイルを追加しリモートリポジトリにプッシュする方法をご紹介します。

作業の流れは下記のとおりです。

  • ローカルリポジトリを作成する
  • ファイルを作成する
  • 作成したファイルをリポジトリにコミット(登録)する
  • 作成したファイルをリモートリポジトリにプッシュする

ローカルリポジトリを作成する

まずはローカルリポジトリを作成します。

ローカルリポジトリの作成は、下記の順番で行います。

ショートコードブロック

  1. ファイルを保管するディレクトリ(フォルダ)を作成する
  2. 作成したディレクトリをローカルリポジトリにする(初期化)

インストールしたGitのターミナル「Git Bash」を起動してコマンドを実行してください。

「Git Bash」を起動

まずはターミナルで、ディレクトリを作成しましょう。

実行するコマンドの順番は下記のとおりです。

$ mkdir github
$ cd github
$ mkdir pushtest
$ cd pushtest

「git init」コマンドで、作成したディレクトリをローカルリポジトリにします。

$ git init

以下のように表示されればローカルリポジトリの作成完了です、

Initialized empty Git repository in ~

リポジトリの作成方法について、詳しく知りたい方はあわせてこちらの記事をご覧ください。

【Git初心者向け】リポジトリの作成からpushまでを解説
更新日 : 2021年7月1日

ファイルを作成する

次にファイルをディレクトリに作成します。ここでは「pushtest.txt」にしています。

$ vi pushtest.txt
pushtest.txtの内容
 
push test!

作成したファイルをローカルリポジトリにコミット(登録)する

ファイルをローカルリポジトリにコミット

ファイルを作成したら、「git add」コマンドでファイルをインデックスにコミット(登録)します。コミットすることでGitで管理する対象のファイルになります。

コミットする際に使うコマンドは下記のとおりです。

$ git add pushtest.txt

以下の記事ではコミットする方法について、より詳しく解説しています。

はじめてのGit!コミット(commit)でファイルを登録してみよう
更新日 : 2021年7月1日

作成したファイルをリモートリポジトリにプッシュする

最後に、作成したファイルをリモートリポジトリにプッシュします。

送信する前に、「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の基本的な使い方に慣れたら、応用編を理解してさらに便利に使いこなしましょう。

続いて、GitHubの応用的な使い方を解説します。

ブランチを作成してみる

ブランチを使えば、masterブランチから処理を分岐して開発を行えます。ブランチを作成するには、まずファイルを作成してローカルリポジトリにコミットしましょう。

次に「git branch」コマンドを実行してください。

git branch [ブランチ名]

ここではブランチ名をbranch_testにしています。

$ git branch branch_test

作成されたブランチは引数なしの「git branch」で一覧を確認できます。

$ git branch
* branch_test
master

ブランチの作成や切り替えの方法については、以下の記事で詳しく解説しています。

【Git入門】ブランチ(branch)とは?メリットや使い方を解説!
更新日 : 2021年7月1日

Gitの設定内容を確認・変更する

Gitの設定内容を確認・変更

Gitの設定内容を確認・変更する場合は、「git config」コマンドを使います。

git configで設定内容を確認したり、設定内容を変更する方法については、以下の記事で詳しく解説しています。

git configでGitの設定を変更・確認する方法を解説!
更新日 : 2021年7月1日

ファイルを比較する

git diff」コマンドを使用すると、2つのファイルを比較して差分を確認できます。

例えばリモートリポジトリに変更したソースファイルをマージするとき、「変更内容が反映されているか」「他の担当者が編集した内容を消してしまってないか」などを確認するときにdiffを使用します。

git configの書き方は下記のとおりです。

$ git config [種別] [設定項目] [変更内容(値)] <value>

Gitの設定はオプションでそれぞれの種別「system」「global」「local」に分けて設定できます。

git configでGitの設定を変更・確認する方法については、以下の記事で解説しています。

過去のファイルと比較しよう! git-diffの使い方を解説
更新日 : 2021年7月1日

リポジトリにtagをつける

git tag」コマンドを使用すると、ファイルにタグをつけてわかりやすくすることができます。

例えばリリース時にコミットごとにバージョンを付けて管理したい場合(ver1.0 → ver1.1など)などにtagを作成します。git tagコマンドを使用することでタグを簡単に作成することができます。

git tagの書き方は下記のとおりです。

# 注釈なしタグ
git tag [タグ名]

# 注釈付きタグ
git tag -a [タグ名] -m [“コメント“]

tagは「注釈なし」コマンドと、簡単なコメントが付けられる「注釈あり」コマンドがあります。

git tagの詳しい使い方については、以下の記事で詳しく解説しています。

【Git入門】git tagとは?基本をわかりやすく解説!
更新日 : 2021年7月1日

サブモジュールを作成する

サブモジュールを作成

サブモジュールを作成すれば、外部のリモートリポジトリを現在の自分のリモートリポジトリにサブモジュールとして追加できます。

サブモジュールを作成するには、「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 = https://github.com/takataka58/Sample.git

サブモジュールを追加したら「git commit」でプロジェクトをコミットするのを忘れないでください。

$ git commit -m "git add Sample"

サブモジュールについては、以下の記事で詳しく解説しています。

これならわかる!git submoduleでサブモジュールを追加する方法
更新日 : 2021年7月1日

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でよく使うコマンドについては、以下の記事で詳しく解説しています。「あれ、このコマンドどうやって使うんだっけ?」となったらぜひ参考にしてください。

よく使うGitコマンド19選!使い方を初心者向けにわかりやすく解説
更新日 : 2021年7月1日

この記事のおさらい

GitHubとは?Gitとどう違う?

GitHubとは、「Git」の「ハブ:拠点・中心・集まり」という意味で、Gitの仕組みを利用して、世界中の人々がプログラムのコードやデザインのデータなどを保存して、公開できるようにしたサービスです。Gitは「ファイルの変更履歴を管理するバージョン管理システム」であるのに対し、GitHubは、「Gitの作業をみんなとやりとりできるWebサービス」であるという点で異なります。

GitHubの使い方は?

GitHubを使うにはまず公式サイトでユーザー登録を行いリポジトリを作成します。次にローカルリポジトリを作成して、ファイルを作成しコミットしてください。最後に作成したファイルをリモートリポジトリにプッシュします。

GitHubでファイルをダウンロードするには?

GitHubでファイルをダウンロードするには、GitHubにログインして、キーワード検索を行います。関連するファイルが一覧表示されるので選んでダウンロードしましょう。

Writer

侍テック編集部

株式会社SAMURAI

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。侍テック編集部では技術系コンテンツを中心に有用な情報を発信していきます。

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI ENGINEER Plus

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら
Close