エンジニアが使っているGithub、概要を解説!

エンジニアにとって今や必須ツールとなっているGithub。しかし、これからプログラミングの勉強を始める方や、これまでの開発でGithubを利用していなかった方は、Githubがどのようなものか詳しく理解できていないこともあるのではないでしょうか。そこで今回はGithub初心者の方に向けて、サービスの特徴や知っておくべき知識、使い方などをご紹介します。

Githubとは?

pixta_44783115_M

GithubとはGitをhubできるソースコード管理サービスのこと。Linuxの開発チームが利用していたものが評価され、世界中のエンジニアに広まりました。
そもそもGithubの「Git」は、プログラムのソースコードなどの変更履歴を記録するためのバージョン管理システムのことを指します。システム開発のプロジェクトでは、複数人が同時にプログラミングソースを編集することが一般的です。その際に、変更内容が衝突したりシステムの整合性がとれなくなったりするのを防ぐため、Gitで変更履歴をさかのぼって編集できるようにするのです。Gitはソースコード以外にもExcelファイルや画像など様々なデータを保存できるため、システム開発に欠かせないものとなりました。
Githubは、このGitを世界中の人と共有できるサービスです。世界の優秀なエンジニアが記述したソースコードを閲覧することができ、自分の作品も公開することが可能。その他にも、タスク管理機能やバグ管理機能、SNS機能など、開発を効率化できるツールも備わっています。

知っておきたいGithubの事前知識

Githubを利用する前に覚えておきたい事前知識を解説しましょう。

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

リポジトリとは、ファイルを保管する場所のこと。Githubでは、PCのローカル環境にある「ローカルリポジトリ」と、ネットワーク上にある「リモートリポジトリ」という2つの概念を使い分けます。具体的には、ローカルリポジトリで作業内容を保存し、リモートリポジトリにアップロードして内容を共有するという使い方になります。

コミット/プッシュ/ブランチ

Githubのコミットとは、ファイル追加や変更の履歴をリポジトリに保存することを指します。
プッシュは、ファイル追加や変更の履歴をリモートリポジトリにアップロードすることです。
ブランチは、同時に行われるファイル追加や変更の履歴を個別に保存すること。履歴の流れを分岐して記録するため、互いのブランチが干渉しあうことなく開発することができます。

Githubの使い方

Githubは以下の1~5の手順で利用します。リポジトリの作成はプロジェクトの初回のみ行い、2~5を繰り返しながらシステムを開発していきます。それではそれぞれの手順を具体的に見ていきましょう。

1.リポジトリを作成する

Githubにログインし「New Repository」ボタンで新しいリポジトリを作成します。「Repository name」に任意のプロジェクト名を記入し、「Create repository」を押下すると作成完了となります。表示されるリモートリポジトリのアドレスは、その後も使用するのでメモしておきましょう。

2.ファイルを作成・編集する

エディタでソースコードのファイルを作り、ローカルリポジトリを作成します。「awesome」というディレクトリを作成する場合、以下のコマンドを記述します。

mkdir awesome
cd awesome
git init

3.ファイルの作成・変更・削除をインデックスに追加する

「test.html」というファイルをローカルリポジトリに追加する場合、以下のコマンドを記述します。

git add test.html

4.変更内容をローカルリポジトリにコミットする

インデックスに追加されたファイルをリポジトリにコミットする場合、以下のコマンドを記述します。

git commit -m “add new file”

リモートリポジトリに反映させるために、リモートリポジトリの情報を追加します。リモートリポジトリの情報は、リポジトリ作成時に表示された以下のようなアドレスとなります。

git remote add origin https://github.com//test.git

5.ローカルリポジトリをプッシュしてリモートリポジトリにアップロードする

ローカルリポジトリをプッシュして、リモートリポジトリに反映するために以下のコマンドを記述します。

git push origin master

Githubのユーザ名とパスワードを入力すると、反映が完了します。

Githubのメリット

pixta_55069109_M
Githubのメリットは、何といってもシステム開発の作業効率が上がることにあるでしょう。オリジナルのソースコードをコピーして編集したり、プロジェクトメンバーが行った変更を反映して共有したり、人の書いたコードを自分のコードに取り込んだりと、Githubにはプログラミングを効率化する機能が多数備わっています。また、ツールの使い心地もよいため、開発のモチベーションが高まること間違いありません。
また、就職や転職の際にGithubで自分のソースコードを提出すれば、スキルを証明することができるため有利に働く可能性があります。

Githubのデメリット

Github自体のデメリットはほぼないと言えますが、強いてあげると就職・転職でマイナス評価につながってしまう可能性がある点はデメリットと言えます。というのも、Github上のソースコードは実用的なプログラミングになるので、その人のスキルが明確に分かることになります。そのため、スキル不足の方が採用担当者にGithubを提出すると、スキル不足と判断されてしまう可能性があるのです。自信があれば問題ありませんが、プログラミングに慣れていない未経験の方は、提出が必須でない限りGithubは提出しない方がいいかもしれません。

まとめ

Githubはシステム開発を効率化する有益なツールです。世界中のエンジニアが記述したソースコードを読み込むだけでも勉強になるため、プログラミングを学びたいという方は一度登録してみるとよいでしょう。また、実際にツールを使いこなせると、就職・転職後の開発現場でも役立ちます。コマンドや各種機能を覚えて、快適に活用できるようにしましょう。