【リニューアル記念】未経験からブロガーへのSTEPを続々更新!

【入門】GitHubとは?使い方や用語を覚えてリポジトリを作ってみる!

GitHubの使い方と用語

GitHubとは、Gitのリモートリポジトリを提供するサービスです。

ここでは、GitHubの特徴や基本的な用語を解説したあと、実際にGitHubにリモートリポジトリを作るまでの使い方を紹介します。

この記事は、Gitを理解している方を対象にしたGitHubの解説になっているので、Gitについて不安な方はさきに以下の記事を読むと理解しやすいです。

GitHubとは

GitHub(ギットハブ)とは、Gitのホスティングサービス(Gitの機能を提供するサービス)です。

具体的には、リモートリポジトリの役割をWeb上で果たしてくれるサービスだと思ってください。

  • GitのリモートリポジトリをWeb上で簡単に作成
  • GitのリモートリポジトリをWeb上で複数人に共有
  • GUI(グラフィカルユーザインタフェース)で直感的に操作

本来、Gitのリモートリポジトリは、ほかのメンバーに共有するため、サーバーを自分で用意する必要あります。

また、GitはCUI(キャラクタユーザインタフェース)で操作するのが基本です。

ですが、これって結構ハードルが高いんですよね。

でも、このGitHubを使えば、サーバ準備などの面倒な作業をすべて解決し、グラフィカルで直感的にGitを操作できるようになるのです。

とくに、Web上に公開できるところは大きな魅力ですね。自分がどこにいてもアクセスできますし。

キツネ

いつでもどこでも利用できるのは魅力的だね!

GitHubの用語

プルリクエスト(pull request)とは

GitHubでよく使われる機能として、「プルリクエスト(pull request)」というものがあります。

プルリクエストは、GitHub上で「指定したブランチ」を「特定のブランチ」にマージするためのリクエスト(要求)になります。

実際の流れはこんな感じです。

  1. 開発者がdevelopブランチで開発
  2. 開発者がdevelopブランチの情報をmasterブランチに「マージしてほしい!」とリクエスト(マージリクエスト)
  3. 管理者がマージリクエストを許可
  4. masterブランチにdevelopブランチの情報がマージされる

キツネ

管理者が確認してからマージする仕組みになっているんだね!

フォーク(fork)とは

もう1つ、GitHubで使われる機能に「フォーク(fork)」というものがあります。

フォークは、対象のリモートリポジトリを自分のアカウントのリモートリポジトリに複製する機能です。

Gitのクローン(clone)と少し似ていますが、以下のように比べてみると違いがわかりやすいです。

  • 「フォーク」…対象のリモートリポジトリを、自分のリモートリポジトリとして複製
  • 「クローン」…対象のリモートリポジトリを、自分のローカルリポジトリとして複製

キツネ

たまに出てくる言葉だから、名前だけでも覚えておこう!

GitHubのリポジトリ

GitHubのリポジトリは、リモートリポジトリとして利用します。

そして、このリモートリポジトリは、以下のどちらのタイプにするかを選ぶことができます。

  • 「パブリックリポジトリ」…公開
  • 「プライベートリポジトリ」…非公開

パブリックリポジトリは、すべての人があなたのリポジトリを見たり、クローン(複製)することができます。

もし、誰にも見せたくないのであれば、プライベートリポジトリに設定してください。

プライベートにしておけば、自分が許可したユーザー以外に見られる心配はありません。

GitHubの料金プラン

GitHubは、個人向けに「Free(無料)」と「Pro(有料)」の2つの料金プランが用意されています。

ですが、個人で利用するだけなら「Freeプラン」で十分です。

Freeプランでも、パブリック、プライベート、どちらのリポジトリも無制限で作成でき、3人までなら共同開発も可能です。

開発メンバーを増やしたくなったタイミングで、Proプランに変えたらいいと思います。

GitHubの料金プランページ

キツネ

勉強用なら「Freeプラン」で問題ないと思うよ!

GitHubの使い方

GitHubは、使い方によって色々なことができます。

ですが、あれこれ考える前に、まずはリモートリポジトリを作り、GitHubを利用してみるところから始めましょう。

「Free」プランでも、ほとんどの機能を利用できるので大丈夫。

流れはこんな感じです。

  1. GitHubでアカウントを作る
  2. リモートリポジトリを作る
  3. リモートリポジトリにプッシュ

GitHubアカウント作成

まずは、GitHubのアカウントを作ってみましょう。

  1. GitHubの公式サイトにアクセス
  2. 「GitHubに登録する」ボタンをクリック
  3. ユーザー名、メールアドレス、パスワードを入力し、パズルを解いて、「Create an account」をクリック
  4. 「Free」プランを選択し「Continue」をクリック(チェックボックスは入れなくていい)
  5. 画面下にある「skip this step」リンクをクリック
  6. GitHubからアカウント確認メールが届くので、「Verify email address」ボタンをクリック
  7. アカウント作成完了!

リモートリポジトリ作成

GitHubアカウントができたら、次はリモートリポジトリを作ってみましょう。

途中、「プライベートリポジトリ」か「パブリックリポジトリ」かを選択できますが、勉強用ならプライベートでいいと思います。もちろん、あとから変更することも可能です。

  1. 「Start a project」ボタンをクリック
  2. 「Repository name」にアプリ名やプロジェクト名を入力
  3. リポジトリを公開するなら「Public」、非公開なら「Private」を選択
  4. 「Create repository」ボタンをクリック
  5. リモートリポジトリ作成完了!

リモートリポジトリにプッシュ

GitHubのリポジトリにプッシュ

リポジトリを作成すると、上のような画面が表示されたと思います。

画面に表示されているように、いまの自分の状況で実行するコマンドが違います。

コマンドの意味が分からない方のために、僕がコメントで何をしているのか追記したコマンドを置いておきましたので、見ながら1つずつ実行してみてください。

ちなみに、僕はリポジトリ名を「training」で作成していますが、自分のリポジトリ名に置き換えて実行してくださいね。

詳しいGitコマンドの解説は、また別の記事で紹介するので、いまは完全に分からなくても大丈夫。とりあえず進めてみましょう。

ローカルリポジトリを持っていない場合

ローカルリポジトリをまだ作っていないという方は、以下のコマンドを実行してください。

Gitのインストール自体がまだの方は、さきに「【超簡単】Gitのインストール方法と初期設定(Windows、Linux)」を読みながらインストールを完了させておきましょう。

ローカルリポジトリを作ってプッシュ
# プロジェクトを作成するディレクトリに移動
$ cd /path/to

# 「# training」という文字列を「README.md」に記述
$ echo "# training" >> README.md

# 現在のディレクトリにローカルリポジトリを作成
$ git init

# 「README.md」をインデックスに登録
$ git add README.md

# コミットメッセージ「first commit」をつけてコミット
$ git commit -m "first commit"

# GitHubにあるリポジトリをリモートリポジトリとして設定
$ git remote add origin https://github.com/(ここに自分のアカウント名)/(ここに自分のプロジェクト名).git

# GitHubにあるリモートリポジトリにプッシュ
$ git push -u origin master

キツネ

プッシュするときはGitHubのアカウント名とパスワードを入力するよ!

ローカルリポジトリを持っている場合

すでにローカルリポジトリを作っている方は、以下のコマンドでリモートリポジトリを設定し、プッシュするだけです。

リモートリポジトリを設定してプッシュ
# プロジェクトのあるディレクトリへ移動
$ cd /path/to

# GitHubのリポジトリをリモートリポジトリとして設定
$ git remote add origin https://github.com/(ここに自分のアカウント名)/(ここに自分のプロジェクト名).git

# リモートリポジトリにプッシュ
$ git push -u origin master

まとめ

今回は、GitHubにリモートリポジトリを作成し、ローカルリポジトリと連携するところまでを解説しました。

あとは、実際にGitを使ってファイルを管理していくだけですね。

【初心者】Gitコマンドの使い方を体系的に覚えよう!【一覧あり】」を読みながら手を動かすことで、Gitコマンドを体系的に覚えることができます。

テキストのコピーはできません。