LoginSignup
5
2

More than 3 years have passed since last update.

【Git】Gitのデータ構造とは?(ローカル)

Last updated at Posted at 2020-11-18

はじめに

最近、Git/GitHubについて学習しております。
今回は、Gitの根本的な知識であるローカルのデータ構造についてアウトプットしたいと思います。
※今回の内容では、GitHub等のリモートリポジトリは含まれておりません。

ローカルのデータ構造のエリア分け

Git.JPG

各エリアについて説明

上記で紹介した各エリアについて掘り下げていきたいと思います。

ワークツリー

ワークツリー.jpg

ワークツリーとは、実際に作業を行う場所です。
ファイルの作業完了後、以下コマンドでインデックスに登録します。

git add <ファイル名>

インデックス(ステージ)

インデックス.jpg

インデックスとは、リポジトリにコミットする準備をする場所です。
別名、「ステージ」とも言います。

インデックス内に必要なファイルが準備できた場合、下記コマンドでリポジトリに登録します。

git commit -m "<コミットメッセージ>"

インデックスがワークツリーとリポジトリの間にある理由

理由は、以下の2点になります。

  • ワークツリー内の必要ないファイルを含めずにコミットを行える。
  • ファイルの一部の変更だけをインデックスに登録してコミットが可能

リポジトリ(ローカルリポジトリ)

リポジトリ.jpg

リポジトリとは、ファイルやディレクトリの状態を記録する場所になります。

今回、紹介しているリポジトリの位置づけとしては、「ローカルリポジトリ」になります。

リモートリポジトリとローカルリポジトリの違い

  • リモートリポジトリ

専用のサーバにコード等のファイルを配置して複数人で共有するためのリポジトリです。
例)GitHub,BitBucket

  • ローカルリポジトリ

ユーザー自身の手元のマシン上に配置するリポジトリです。
※今回紹介しているリポジトリが、こちらにあたります。

まとめ

  • ワークツリー

ファイルの作業をする場所

  • インデックス(ステージ)

コミット前にファイルを待機させておく場所

  • リポジトリ(ローカルリポジトリ)

ファイルの変更履歴を保存する場所

参考

Git: もう怖くないGit!チーム開発で必要なGitを完全マスター
ワークツリーとインデックス
履歴を管理するリポジトリ

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2