Gitのキホン – 全貌をザックリ捉える

目次

概要

表題のとおり、まずはGitの全貌をザックリ捉えましょう。
これがイメージ出来ていないと、コマンドを実行しても何が起きたのかわかりにくいと思います。

Gitってなに?

Linuxカーネルの開発者が開発した、ソースコードのバージョン管理ツールです。
Gitに関心がある時点でこの辺はご存じの方が多いと思いますが、一応書いておきます。

最近では多くのアプリケーションに変更履歴を記録する機能が実装されてきました。
しかし、Linuxカーネルのような膨大な量のソースコードの管理は容易ではありません。

これを解消する為のソリューションが Git です。

開発において、誰が、いつ、なんのために、なにをしたのかを記録し、必要ならば切り戻したり、メンバーの更新内容をレビューしたりすることが出来ます。

Gitの全貌

ザックリですが、全貌を捉える為のイメージを用意しました。
この位置関係を意識してコマンドを実行していきましょう。

矢印の横にある文字列は、変更内容を矢印の方向に反映させるためのGitコマンドです。
実際は一方通行ではなく、変更内容を取り消すコマンドもあります。

ワークツリー自分の作業しているフォルダ(ディレクトリ)のこと
ステージワークツリーで編集した内容を置くエリアで、インデックスとも呼ばれる
ローカルリポジトリステージにあるデータを一定不変のデータとして記録する場所
リモートリポジトリコードの最終的な反映先である、GitHub等ネットワーク上にあるリポジトリ

Gitのデータの持ち方

Gitはファイルの変更内容を都度スナップショット1として記録します。
変更のないファイルは下図のように、前のスナップショットを使いまわします。

おしまい

リモートリポジトリは経過や完成品をアップしたり、誰かの編集を取り込む時にアクセスします。
ローカルのワークツリー・ステージ・ローカルリポジトリの構造をしっかりイメージしておきましょう!

  1. スナップショット:ある状態をそのまま切り取ることです。Gitでは”ファイルの状態をそのまま記録し、ヘッダ情報を付与して圧縮したもの”とザックリ捉えておきましょう。 ↩︎
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

sibaのアバター siba プログラミング学習に出遅れた社会人

プログラミング学習に出遅れた社会人。

目次