catch-img

GitHubを上手に使って開発スピードアップ。新人エンジニア向け基本解説

GitHubは、チームで開発を担うエンジニアたちにとっては必須といえるツールです。初心者では難しいバージョン管理を、間違いなく効率的に行えます。新人エンジニア・SVNメインの方向けにGitHubの基本的な機能や使い方を分かりやすく解説します。

目次[非表示]

  1. 1. エンジニアには必須 GitHubとは
  2. 2. GitHubの使い方と基本的な流れ
  3. 3.ローカルリポジトリとリモートリポジトリの役割と意味
  4. 4. 初めてのGitHub 登録の方法
  5. 5. 『branch』(ブランチ)の意味と役割も覚えておこう
  6. 6. 初心者に扱いやすいGitHub Desktop
  7. 7. 初心者こそ活用したいGitHub

エンジニアには必須 GitHubとは

開発プロジェクトでは、エンジニアのチームが連携してコーディングを進めることが必要です。プロジェクトの規模が大きくなるほどバージョン管理は難しくなりますが、『GitHub(ギットハブ)』を使えばスマートに解決できます。

エンジニアにとって必須とも言えるGitHubの概要を、『Git(ギット)』との関係も交えて見ていきましょう。

Git』を使ってバージョンを管理

GitHubは、分散バージョン管理システム『Git』で作成・管理するソースコードを、インターネット上で公開・共有できるサービスです。

GitHub社が運営するサーバーにデータをアップロードすると、開発者はどこからでもWebブラウザ上でソースコードにアクセスできます。

公開されたソースコードは開発者が丸ごとダウンロードでき、それぞれの開発者が部分的に編集して、GitHub社のサーバー上でバージョンの閲覧・操作が可能です。

オープンソースソフトウェアのレビューや共同開発をはじめ、有料プランを選択すれば企業向けのプライベートな開発環境としても利用できます。

Gitとは何だろう?

Gitはバージョン管理システムの一種です。ユーザー個々のPCに丸ごとソースコードをダウンロードするため、サーバーが分散型であることから分散バージョン管理システムと呼ばれます。

Gitでは、一つの中央サーバーと複数のローカルサーバー(PC)でソースコードをやり取りする仕組みです。

それぞれのPCでバージョンが厳密に管理されたソースコードを編集できるため、中央サーバーへアップロードする際に誤って上書きするようなミスが生じません。

Gitで利用する中央サーバーをインターネット上のGitHub社のサーバーに置き換え、Webブラウザ上でソースコード・バージョンを簡単に閲覧・操作できるサービスがGitHubです。

■関連記事

通年開講プロエンジニア育成コース(Java1~3ヶ月)ー株式会社ジョブサポート

GitHubの使い方と基本的な流れ

Gitは分散バージョン管理に特化した開発環境で、GitHubGit専用のホスティングサービスという関係です。GitとGitHubの共通仕様として、データは『リポジトリ(Repository)』に保存します。GitHubの基本的な使い方や流れを見ていきましょう。

データの保管場所となる『リポジトリ』を作成

まずはGitHubにアクセスし、データの置き場所である『リポジトリ(Repository)』の作成が必要です。リポジトリは倉庫、保管庫の意味で、ファイルやディレクトリを保管する場所となります。

GitHubにログインして『New Repository』を選択し、次の画面でリポジトリの名前の入力や、ソースコードの公開・非公開の選択をしましょう。

必要事項を入力して『Create repository』を選択すれば、『リモートリポジトリ(GitHubサーバー上のリポジトリ)』が作成できます。

続いてPCで、『mkdir(ディレクトリ作成)』コマンドと『cd(ディレクトリ移動)』コマンドでディレクトリ名を指定して『git init』コマンドを実行し、カレントディレクトリを『ローカルリポジトリ(PC上のリポジトリ)』に変換しましょう。

また、『git clone』コマンドでリモートURLを指定すると、リモートリポジトリをローカルリポジトリに複製できます。

ファイル作成・編集後、最終的にリポジトリに反映

GitGitHubを使った開発現場では、リモート・ローカルともにリポジトリは作成(または複製)してから、ソースコードの作成や編集を行い、バージョン管理をしていくのが基本的な流れです。

行ったファイルの作成・変更・削除は、直接リポジトリに反映させるのではなく、まずGitの『インデックス』に追加します。インデックスとは、次の手順で変更内容を『コミット』するまでの一時的な保存場所です。

コミットとは、ファイル・ディレクトリの変更内容をローカルリポジトリに記録することを指します。コミットが完了したローカルリポジトリを、GitHub上のサーバーに送信すれば、リモートリポジトリにバージョン変更が反映されます。

Java短期講座(入門5日・基礎10日)ー株式会社ジョブサポート

ローカルリポジトリとリモートリポジトリの役割と意味

Gitで管理するPC上のリポジトリをローカルリポジトリ、GitHubで管理するGitHubサーバー上のリポジトリをリモートリポジトリと呼びます。それぞれのリポジトリの役割と意味や、基本的なコマンドを見ていきましょう。

ファイルをGitのインデックスに追加『git add

Gitでは、ソースコードのバージョン変更をインデックス・ローカルリポジトリの順に記録してから、リモートリポジトリに反映します。

中央サーバーへのアクセス集中を避けられるため、大規模なプロジェクトでも効率的にバージョン管理を行えるのが、GitGitHubを導入するメリットの一つです。

ソースコードを作成・編集したら、コミットの前段階として、ファイルの作成・変更・削除を『git add』コマンドでインデックスに追加します。git addコマンドでファイル名を指定すると、インデックスに変更内容が一時保存されます。

変更をローカルリポジトリに記録する『git commit

インデックスに一時保存した変更内容は、『git commit』コマンドでローカルリポジトリにコミット(記録)します。変更内容が正しくコミットできているかどうかは、『git status』コマンドを実行するだけで確認可能です。

コミットが完了すればリモートリポジトリへの反映を行いますが、その前に『git remote add』コマンドでリモート名・リモートURLを指定し、リモートリポジトリの設定を行いましょう。

ローカルリポジトリからリモートリポジトリに送信する『git push

ローカルリポジトリは、『git push』コマンドを実行するだけでリモートリポジトリに反映できます。Gitではこれをアップロードとは呼ばず、『プッシュ(押す)』と呼びます。

逆にリモートリポジトリをローカルリポジトリに反映させる場合、ダウンロードではなく『プル(引く)』という表現です。

開発者たちは作成・編集したソースコードをプッシュまたはプルし、GitHub上でバージョン管理を行いながらプロジェクトを進行させていきます。

■関連記事

オンライン・リモート講座(入門5日・基礎10日)ー株式会社ジョブサポート

初めてのGitHub 登録の方法

GitHubを利用するには、簡単なアカウント登録が必要です。基本的な機能は無料プランでも利用できますが、ビジネスでの利用なら高機能な有料プランをおすすめします。アカウント作成や料金プランの選択について見ていきましょう。

アカウントを作成・登録する

GitHubを利用するには、まずアカウント作成が必要です。GitHubのサイトにアクセスして、トップページの『GitHubに登録する』を選択しましょう。

はじめに必要な入力項目は、ユーザー名・メールアドレス・パスワードの3点です。入力が完了したら、料金プランの選択に移ります。

料金プランを選択しメールを確認

GitHubの料金プランは、『Free』『Team』『Enterprise』『GitHub One』の4種類です。Freeのみ無料で、その他は月額料金が発生します。

20204月の仕様変更から、Freeプランでもパブリック(公開)リポジトリ、プライベート(非公開)リポジトリ両方の利用が可能です。

ただし、ソースコードのオーナーになるなどの高度な機能は、有料プランだけで利用できます。プロジェクトに必要なプランを選んだら、『Finish sign up』を選択しましょう。

登録したメールアドレスに認証メールが届くため、手順に従ってユーザー認証を行えばアカウント登録は完了です。

branch』(ブランチ)の意味と役割も覚えておこう

GitGitHubが分散バージョン管理システムとしての真価を発揮するのは、『branch』(ブランチ/枝)を活用した場合です。branchの意味や役割、基本的な使い方を見ていきましょう。

branchとは?

branchは、枝分かれする複数のバージョン管理を、互いに影響することなく行える仕組みです。

たとえば、リリース版・機能追加・バグ修正のそれぞれを別のブランチで管理して、ブランチ同士を『マージ』(併合)することで一つのブランチにまとめ直せます。

ほかにも、メインのブランチと複数のサブのブランチを、並行して作成・編集する場合にも利用できます。それぞれの機能追加を別の開発者が担当しても、デバッグや修正に対応しやすいバージョン管理が可能です。

branchを作成する

ローカルリポジトリに最初のコミットを行う際、『master』という名前のブランチが自動生成されます。Gitはブランチ構造を基礎としており、簡単なコマンドで自由にブランチの追加が可能です。

git branch』コマンドを実行すると、ブランチの一覧が表示されます。作業中のブランチは『* master』のように表示され、ひと目で把握できる仕様です。

続いて『git branch』コマンドで任意の名前を指定すると、masterから枝分かれしたブランチが作成できます。『git checkout』コマンドでブランチ名を指定するだけで、作業中のブランチの切り替えも可能です。

branchへの『push』とbranchからの『pull

ローカルリポジトリからリモートリポジトリへ、ブランチ単位でプッシュもできます。

まずは作成したファイルをローカルリポジトリにコミットし、『git push』でリモート名とブランチ名を指定しましょう。これだけで指定したブランチがプッシュできます。

プッシュされたブランチのプルも簡単です。git checkoutコマンドでブランチ名を指定してから『git pull』コマンドを実行すると、リモートリポジトリのブランチがプルできます。

branchmergeと削除

分岐したブランチをマージするには、『git merge』コマンドを使います。まずはgit checkoutコマンドで作業中のブランチをmasterに切り替え、マージしたいブランチ名をgit mergeコマンドで指定しましょう。

あとはgit pushコマンドでリモート名とmasterを指定すると、リモートリポジトリ上でマージが反映されます。

実際の開発現場ではあまり行わない操作ですが、簡単なコマンドでブランチの削除も可能です。git branchコマンドで『-d』オプションとブランチ名を指定するだけで、指定したブランチを削除できます。

■関連記事

フロントエンド(HTML・CSS・JavaScript)入門5日ー株式会社ジョブサポート

初心者に扱いやすいGitHub Desktop

GitGitHubの組み合わせでは複数のコマンドを使い分けますが、コマンドを極力使わないGitHub Desktopでも同様の機能を利用できます。初心者にも扱いやすいGitHub Desktopについて、概要や導入方法を見ていきましょう。

GitHub Desktopとは

GitHub Desktop』は、デスクトップ上で簡単にリポジトリの操作ができる、GitHub社の純正ソフトウェアです。GUIを採用しているため、基本的にはコマンドを手入力する必要がなく、マウスを使って直感的に操作できます。

エディタは好みのものを引き続き利用できるので、リポジトリのクローンやプッシュなどだけはGitHub Desktopで行う、という使い分けが可能です。

GitHub Desktopの準備と使い方

GitHub Desktopの公式サイトにアクセスすると、トップページに『Download for macOSWindows)』というボタン・リンクが表示されます。

これをクリックすると、Macの場合はZIPファイルがダウンロードされます。解凍すると『GitHub Desktop.app』というフォルダができるため、フォルダごと/Applications内に移動しましょう。

Windowsの場合は、ダウンロードされるインストーラをそのまま起動し、インストールを完了させれば利用できます。

アプリケーションを起動すると、まずログインが必要です。アカウントを持っていない場合は、GitHub公式サイトで取得してからログインしましょう。

GitHub Desktop

GitHub Desktopのメリット

GitHubはブラウザ上で操作しますが、GitHub DesktopPC環境と統合されます。普段使っているアプリケーションで編集できるため、操作性はGitHubよりも快適です。

GitHubには、クローン(リモートからローカルへ複製)やフォーク(リモート内で複製)といった特有の機能があります。GitHubではクリックするだけでこれらの操作ができるため、GitHubより手間がかかりません。

また、GitHub Desktopは画像の差分表示にも対応しています。見やすいGUIで画像のバージョン管理ができることも、GitHub Desktopのメリットです。

初心者こそ活用したいGitHub

ソフトウェア開発では、複数の開発者がそれぞれの機能を分担してコーディングを行うことが一般的です。初心者では、バージョン管理まで意識して機能追加をするのは困難だと思います。

GitGitHubではブランチを利用して自然に作業分担できるうえ、バージョン管理は容易です。仕様上、プッシュ時のバージョンの不正操作はエラーが起こるため、ミスの防止にもなります。

初心者こそGitHubを活用して、開発者間のやり取りのロスやケアレスミスをなくしましょう。

​​​​​​​

新卒・中途未経験者を採用した
企業におすすめのエンジニア研修サービス

法人研修の実績2700名以上!中小企業~大手上場企業まで幅広く受講してます。
若手、新人エンジニア採用後の Java研修はジョブサポートお任せ下さい
短期講座(入門5日、基礎10日) Java・フロントエンド (HTML5・CSS・JavaScript) 全国の中小~大手企業まで幅広くお問い合わせ、 受講を頂く人気講座です

運営会社

株式会社ジョブサポート

Java・フロントエンド(HTML5・CSS・JavaScript)の企業研修実績2700名以上を実施。受講満足度は95%。

おすすめお役立ち資料

おすすめお役立ち資料02
おすすめお役立ち資料02

関連記事

研修サービス一覧

プロエンジニア育成コース
新人エンジニア研修
短期通学講座
研修実績
よくあるご質問

ランキング

タグ一覧