GitHubは便利で使いやすく、多くの人と連携がしやすいサービスとして急激に成長しており、バージョン管理系のクラウドサービスでトップを走っています。
今回は、簡単な操作をするだけで、面倒なソースコード管理から解放されるGitHubのメリットと基礎知識についてご紹介します。もくじ
◆GitHubとは
GitHubとはGitを利用したプログラムのバージョン管理を行うウェブサービスのことです。
GitHubのHubとは「中心」や「中枢」を意味し、文字通り、ソフトウェア開発の中枢となり得るウェブサービスだと言えます。
Gitは「バージョン管理システム」を意味し、GitHubは「Gitを使ったウェブサービス」という意味で覚えておくと良いでしょう。
GitHubの代表的な機能の1つとして、コードレビューの効率化に便利な「Pull Request」というコミュニケーションツールがあります。
「Pull Request」は編集や更新に関する提案を行い、他の開発者と協議をした上で、その提案を反映するか否かを決めることができます。
開発者が意見を出し合うことにより、コードの再利用性、保守性の向上が実現する機能です。
◆GitHubの特徴やメリット
GitHubは、 様々なプロジェクトのためにGitのリポジトリ(貯蔵庫、データベース)をホスティングできるサービスです。
各プロジェクトにメモ書きやタスク管理ツールなど、コラボレーションのための機能も充実しているのが特徴です。
次にメリットである3つの機能を紹介します。
・「フォーク」
フォークとは、食器として使うフォークの先端のように、一つのプロジェクトが分派していくことを言います。
GitHubでは、誰かのリポジトリをほかの人がコピーすることによって行い、オリジナルのものに対する編集アクセス権がない場合でも、それを自分のところで改変することができます。
・「プルリクエスト」
プルリクエストとは、自分が行った変更をオリジナルのものに反映させたい場合に使用します。
オリジナルの所有者に「プルリクエスト」と呼ばれる通知を送ることができます。
・「マージ」
マージとは、プルリクエストを受け取った所有者は、ボタンをクリックするだけで、その人のリポジトリに対して行われた変更を自分のリポジトリにも取り入れることができます。
人のコードを自分のコードに導入する「マージする(合併する)」と言います。
マージは、複数の開発者が関わるプロジェクトで重要な工程になりますが、GitHubでは安全かつ速く行うことができます。
◆GitHubを使う上での基礎知識
GitHubを使っていく上で、前提として知っておくと良いとされる基礎知識や用語をご紹介します。
・コミット(commit)
ファイルの追加や変更の履歴をリポジトリに保存すること
・プッシュ(push)
ファイルの追加や変更の履歴をインターネット上あるいはその他ネットワーク上のどこかに存在するプロジェクトである、リモートリポジトリにアップロードするための操作
・ブランチ(branch)
ソフトウェアの開発では、現在リリースしてるバージョンのメンテナンスをしながら、新たな機能追加やバグ修正を行うことがあります。
このような、並行して行われる複数のバージョン管理を行うための機能になります。
ブランチは履歴の流れを分岐して記録していくものになります。
分岐したブランチは他のブランチの影響を受けないことから、同じリポジトリ内でそれぞれの開発を行っていくことができます。
◆まとめ
GitHubは複数名での参加プロジェクト管理を容易にし、高品質なコーディングを可能にします。
求める人材にGitHubの使用経験を挙げる企業もあるなど、GitHubは今や開発現場に必須のツールとされています。
IT業界で学び、取り入れていくことを希望する方は、あらかじめ現場に入る前に基本的な操作方法を学んでおくと良いでしょう。