kledgeb Ubuntuの使い方や日本語化、アプリの使い方を紹介しています。

ツリーオブジェクト(Tree Object)

  「ツリーオブジェクト」は、「スナップショット」を構成する「Gitオブジェクト」の1つです。

  プロジェクトで使用するファイルは、サブフォルダーを作成して、用途ごとにファイルを配置するかと思います。


  「ツリーオブジェクト」は、プロジェクトのフォルダーを表す「Gitオブジェクト」です。
  1つの「ツリーオブジェクト」は、1つのフォルダーを表します。

  サブフォルダーの参照

    1つの「ツリーオブジェクト」は1つのフォルダーを表すため、自分のフォルダー内にサブフォルダーがあった場合、そのサブフォルダーを表す「ツリーオブジェクト」への参照を持ちます。

    サブフォルダーが複数あれば、それぞれのサブフォルダーを表す「ツリーオブジェクト」への参照を持ちます。

    従ってフォルダー階層が、「ツリーオブジェクト」の階層になります。
  

  ファイルの参照

     「ツリーオブジェクト」は、フォルダー内に含まれるファイルの一覧を持っています。
    またそれぞれのファイルへの参照を持ちます。

    このファイルへの参照は、「ブロブオブジェクト」への参照になります。

  ツリーオブジェクトに含まれる情報

    「ツリーオブジェクト」には、以下の情報が含まれています。

  • フォルダーに含まれるファイルやサブフォルダーの一覧
  • ファイル名などファイルやサブフォルダーの情報
  • サブフォルダーを表すツリーオブジェクトへの参照
  • ファイルを表すブロブオブジェクトへの参照

    「ツリーオブジェクト」に「コミットオブジェクト」への参照は含まれていません。

ブロブオブジェクト(Blob Object)  

  「ブロブオブジェクト」も、「スナップショット」を構成する「Gitオブジェクト」の1つです。
  プロジェクトのファイルを表す「Gitオブジェクト」です。


  1つの「ブロブオブジェクト」は、1つのファイルを表します。

  ファイルの中身から生成される

    「ブロブオブジェクト」は、ファイルの中身から生成されます。
    従ってファイルの中身が同じなら、同じ「ブロブオブジェクト」が生成されます。

    もしファイルの中身が同じなら、「ブロブオブジェクト」を共有して利用します。

  ファイルの情報は含まれない

    「ブロブオブジェクト」にファイルの情報は含まれません。
    「ブロブオブジェクト」を調べても、ファイル名は分かりません。
    「ツリーオブジェクト」への参照も含まれていません。

    「ブロブオブジェクト」に含まれる情報は、ファイルの中身だけです。
    ファイルの情報は、「ツリーオブジェクト」に含まれています。

    従ってファイルを取り出すには、「ツリーオブジェクト」と「ブロブオブジェクト」が必要になります。

スナップショットとGitオブジェクトの関係

  「スナップショット」と「Gitオブジェクト」の関係をまとめます。

  「スナップショット」を作成すると、「コミットオブジェクト」が1つ生成されます。
  同様にプロジェクトのフォルダー数だけ、「ツリーオブジェクト」が生成されます。
  同様にプロジェクトのファイル数だけ、「ブロブオブジェクト」が生成されます。

  それぞれの「Gitオブジェクト」は、以下の関係を持ちます。



関連コンテンツ
同一カテゴリーの記事
コメント
オプション