Git入門講座(初心者向け) バージョン管理を学ぼう
Gitは開発者が多い環境で、同時並行で進めていく場合に非常に役立ちます。これまでのバージョン管理システムはリポジトリ(ファイルをためておく場所)が全体で1つしかなかった為、開発者が増えたときなどに同時に開発を進めるには不便でした。Gitが登場してからは複数人で開発を進める企業で次々に採用され、今では複数人開発をする企業では必須ツールといっても過言ではありません。
Gitとは
Gitとは、分散型のバージョン管理システムです。分散型というのは、複数のコンピュータなどに分散して機能を持たせることを言います。Gitでは、開発者それぞれのパソコンに全ての変更履歴を含む完全なフォルダを複製(クローン)し開発者それぞれが自由に変更を加えても衝突せずに更新していくことができます。このような点から分散型バージョン管理システムと名付けられています。対義語として集中型バージョン型システムというものもあり、代表的なものだと「SVN」や「CVS」などがあります。
GitとGitHubの違い
よく混在されてしまう似た言葉として、GitHubというものがあります。GitHubはGitの仕組みを利用してソースコードを共有・管理出来るWebサービスのことです。GitとGitHubの違いはGitは「ファイルの更新履歴を記録する仕組み」でGitHubは「Gitの仕組みを使って開発者を支援するWebサービス」と覚えておきましょう。GitHubを利用することでクラウド上でGitを用いたバージョン管理を行なうことができます。さらに、ソースコードを変更したい部分について、プルリクエストというものを送って他の人にレビュー依頼を行なえたり、プロジェクトの進行や課題の管理を行ないながら、共有することもできます。GitHubには無料版と有料版がありますが、無料版で十分な機能を無制限で利用することができます。
\Gitについてもっと詳しく知りたい方必見!/
【入門講座】Gitの開発環境を整えよう
実際にGitを使い始めるには、Gitのインストールと初期設定、必要に応じてクライアントツールを用意します。それぞれOSによってインストール画面や設定画面が異なるので、注意してください。Gitにおけるクライアントツールとは主に、GUIで操作できるものでCUIのコマンドを叩かなくてもGitを管理することができるツールのことを指します。
Gitをインストールしよう
Gitを使い始めるにはまずインストールが必要です。Gitの公式サイトからインストールを行ないましょう。使用するOSによってインストール画面が異なりますので、注意してください。なお、ここでは具体的な説明は行わないのでインストールで迷った際は都度調べながら進めていきましょう。
Gitの初期設定
Gitの初期設定では、ユーザー名やメールアドレスを登録していきます。こちらもOSによって設定画面がことなります。Macの場合はターミナルから、Windowsの場合は「Git Bash」というものを使って設定していきます。
【入門講座】Gitでできる事
Gitで出来ることは大きく分けて以下の2つです。
・ファイルの変更履歴を管理可能
・複数人で共有できる
ファイルの変更履歴を管理可能
ソースコードの変更によって問題が発生し、元に戻したい場合、手作業での1行ずつの戻し作業は時間がかかりますし、ファイルをバックアップしておくのも手間がかかります。そこでGitを使うと、コマンドひとつで任意のファイルを好きなバージョンに簡単に戻せます。手間がかからず確実に元に戻せるため、開発作業を効率化できます。
複数人で共有できる
Gitでできることの一つとして、複数人での共有です。Gitを使用すると、複数の開発者が同じプロジェクトにアクセスし、コードの変更や追加、削除を行うことができます。各開発者は自分の作業ブランチで作業し、変更内容をリモートリポジトリにプッシュすることで、他の開発者と作業内容を共有できます。さらに、Gitのマージ機能を使用して、異なるブランチや開発者の作業内容を統合することもできます。これにより、チーム全体での効率的なコード管理と協力が可能となります。
\Gitについてもっと詳しく知りたい方必見!/
【入門講座】Gitの基本用語
Gitの仕組みはやや複雑なので、理解するのに少し時間がかかってしまいます。専門用語もたくさん登場するので、あらかじめ最低限覚えておいた方がいい用語を確認しておきましょう。以下まとめて解説していきます。
リポジトリ(repository)
リポジトリとは、Git内でファイルやディレクトリを貯めていく貯蔵庫のようなものです。Gitにはローカルリポジトリとリモートリポジトリの2種類があります。ローカルリポジトリは自分のPC上に作られるリポジトリで、リモートリポジトリはネットワーク上に存在する共有用のリポジトリです。ワークツリー(Gitの管理下にあるディレクトリ)で編集した内容をローカルリポジトリに貯めていき、作業が一段落したらリモートリポジトリにアップロードするのが基本的な流れとなります。
コミット(commit)
コミットとは、ワークツリーで変更した内容をローカルリポジトリに反映させる作業のことをいいます。コミットをする際には、コミットメッセージというものを残すことができます。基本的には必須で書いていく部分で、変更点の要約、変更理由等を記述します。コミットはGUIの場合、1クリックで実行可能ですが、実はコミットをする前にアド(add)という処理がなされています。多くのGUIでは、アドとコミットがセットになって実行される仕様になっています。設定を操作してアドを視覚化することもできます。CUIで操作する場合は必ずコミットをする前にアドが必要になります。一度アドされているファイルであれば2回目からは省略できます。
アド(add)とインデックス(index)
ワークツリーで変更した内容をローカルリポジトリに反映させる為には、まずアドという処理を行ないます。アドとは、変更内容をインデックスという場所に一時的に保存する処理のことです。インデックスとは、ステージングとも呼ばれており、アドされたファイルを一時的に保管する場所のことです。つまり、ワークツリーでファイルを変更したらアドを行ないステージングに保存、その後コミットを行なうことでステージングからローカルリポジトリに保存される流れとなります。
プル(pull)
プルとは、リモートリポジトリの内容をローカルリポジトリに反映させる処理のことです。プッシュがアップロードとするならば、プルはダウンロードのようなものです。チームで開発を行なっていると、リモートリポジトリの内容は都度更新されていきます。その更新された内容部分だけをダウンロードするのがプルです。よく似た言葉にクローンがありますが、クローンはリモートリポジトリにある全てのファイルをダウンロードするので、間違えないように覚えておきましょう。
Git入門講座(6問)
まとめ
ここでは、分散型バージョン管理システムのGitについて解説をしました。Gitをうまく使いこなせるようになれば、リスクを回避しつつ効率的な開発を行なうことができます。そのためにはまずGitの仕組みを理解しておく必要があります。無料問題集を通して実践的に使いこなせるようになりましょう。
Gitについてもっと詳しく知りたい方は、無料問題集をご覧ください!
【Git入門講座】Web制作コースの無料お試し動画
忍者CODEがお届けする有料動画の一部を無料で公開!受講前に実際にご体感下さい!
【Git入門講座】初学者向け無料動画一覧
これからWEB制作やプログラミングの学習を始める「未経験」の方や、最近学習を始めた「初学者」の方におすすめの動画です!
【Git入門講座】無料スキルアップ動画一覧
すでにWEB制作やプログラミングの学習をしており、さらにスキルアップしたい方におすすめの動画です!