見出し画像

30分で理解するGit(中級編)

前回はRPGゲームを例にとってGitの基本的な説明をしました。今回は専門的な用語を交えた、より本質的な説明をしていきます。Gitの説明をする中でGithubとの関係も説明していきます。大丈夫です、初級編の内容が身についているなら難しくはないです。

Gitの作業スペース

初級編では、Gitはゲームのセーブファイルのように保存されると説明しましたが、正確には少し違います。Gitではセーブファイルのように簡単な構造にはなっていません。便利な機能を使うために様々なスペースが仮想的に作られます。具体的には以下の図のような構成になっています。

リポジトリ

一番外側にはリポジトリがあります。リポジトリとはGitのバージョン管理するための作業スペースです。この作業スペースはプログラムのプロジェクトのフォルダを使用します。作成したプログラムファイルはフォルダに入れ、そのフォルダをリポジトリとして設定することでバージョン管理ができるようになります。ですので、リポジトリは作成したプログラムのプロジェクトごとに作成することになります。リポジトリが作成できると「.git」という名前の隠しフォルダが生成されます。この中に作業中の履歴ファイルが作成されていきます。

「ワーキングツリー」はコミット前の作業中の内容を記憶しておくスペースになります。この段階ではまだ、いくらでも変更することができ、バージョンとして保存はされていません。

「インデックス」とはコミット予定の変更を登録するスペースです。ワーキングツリーの内容からインデックスに登録する内容を選択肢し、ステージングを行います。選択した変更は一旦インデックスに移ります。

コミットを行うと、インデックスの内容がすべて指定ブランチの先頭に新たなコミットとして加わります。以後、コミットするたびに木の枝が伸びるように先頭にコミットが追加されていきます。以下の図のように、Gitでは木が伸びていくような構造で管理がされています。喩えるならコミットは年輪、ブランチは枝にあたります。リポジトリという土壌の上にコミットという幹があり、あるコミットからブランチという枝が分かれていく構造になっています。バージョンを歴るごとに木が成長していくようなイメージです。このようにしてGitでは、変化をコミットとして蓄積していきます

画像2

リポジトリを作ったときに最初に作成されるブランチは「master」と言います。これは最も基礎となるブランチで、木で言うと最も太い幹にあたります。ちなみにブランチを作成する際はどのブランチから枝分かれさせることもできますが、初めてブランチを作成する際は必ずmasterの中のどれかのコミットからの分岐になります。

以降はGitの機能の詳しい説明をしていきます。

ここから先は

2,972字 / 4画像

¥ 300

この記事が気に入ったらサポートをしてみませんか?