Git では、ステージング領域はインデックスとも呼ばれます。言われているように見えるのは、作業ディレクトリに変更を加えてこれらの変更を「ステージング」に追加すると、gitはこれらのファイルをインデックスファイルに追加するということです。プロジェクトの /.git/index ファイルを開くと、入力時に表示されるテキストを含むファイルが表示されます。
git status
次のような出力が得られる場合があります。
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: Gemfile
#
no changes added to commit (use "git add" and/or "git commit -a")
しかし、Git Index Contentsのような他の場所では、次のように入力して言います。
git ls-files --stage
インデックスの内容を見ることができます..これは明らかに /.git/index にあるものではありません。.git ディレクトリ内のどのファイルが実際にこのインデックスを格納していますか? 私が疑っているのは、間違っているかもしれません.. .git/index は変更情報を「変更された」行に保存し、次に git ls-files --stage と入力すると、そのファイルのリストを構築していることですステージングされ、そのハッシュは、作業ディレクトリ内のファイルと、このインデックス ファイルで変更済みとしてリストされているファイルに基づいています。これは正しいですか?