Git ワークスペース、ステージング エリア、リポジトリ
基本概念
まずは Git ワークスペース、ステージング エリア、リポジトリの概念を理解しましょう
ワークスペース: コンピューター上に表示されるものです 目次.
一時保管場所:英語でステージと呼ばれ、
またはインデックス。通常は「gitディレクトリ」配下のインデックスファイル(.git/index)に保存されるため、一時保存領域のことをインデックス(インデックス)と呼ぶこともあります。
リポジトリ: ワークスペースに隠しディレクトリ .git があります。これはワークスペースではなく、Git リポジトリです。
次の図は、ワークスペース、リポジトリ内のステージング領域、およびリポジトリの関係を示しています:
図の左側はワークスペース、右側はリポジトリです。リポジトリ内の「index」とマークされた領域がステージング領域(ステージ、インデックス)であり、「master」とマークされた領域がマスターです。
ブランチによって表されるディレクトリ ツリー。
この図では、「HEAD」が実際には master ブランチを指す「カーソル」であることがわかります。したがって、図に示されているコマンドに HEAD が表示されている場所では、master を使用できます。
交換する。
写真内のオブジェクトで識別される領域は Git オブジェクト ライブラリで、実際には「.git/objects」にあります。
ディレクトリには、作成されたさまざまなオブジェクトとコンテンツが含まれます。
ワークスペースで変更(または追加)されたファイルに対して「git add」を実行する場合
コマンドを実行すると、ステージング領域のディレクトリ ツリーが更新され、同時にワークスペースで変更 (または追加) されたファイルの内容がオブジェクト ライブラリの新しいオブジェクトに書き込まれ、その ID がオブジェクト ライブラリの新しいオブジェクトに書き込まれます。オブジェクトはファイルのインデックス作成に記録されます。
コミット操作 (git commit) が実行されると、ステージング領域のディレクトリ ツリーがバージョン ライブラリ (オブジェクト ライブラリ) に書き込まれ、それに応じて master ブランチが更新されます。つまりマスター
指すディレクトリツリーは、送信時の一時記憶領域のディレクトリツリーです。
「git replace HEAD」コマンドを実行すると、ステージング領域のディレクトリツリーが書き換えられ、masterブランチが指すディレクトリツリーに置き換えられますが、ワークスペースには影響ありません。
「git rm --cached
「git checkout .」または「git checkout --
「git checkout HEAD .」または「git checkout HEAD
上記は、Git チュートリアルのワークスペース、一時保存領域、リポジトリの詳細な説明です。その他の関連記事については、PHP 中国語 Web サイト (www.php.cn) に注目してください。