В Git промежуточная область также упоминается как индекс. Кажется, что, когда вы вносите изменения в свой рабочий каталог и добавляете эти изменения в 'staging', git добавляет эти файлы в индексный файл. При открытии проектов /.git/index файл, я вижу, файл, содержащий текст, который отображается при вводе:Где индекс git?
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, что он создает список файлов, которые устраиваются и хешируются на основе файлов в рабочем каталоге и тех, которые перечислены как измененные в этом файле индекса. Правильно ли это?
См. Http://stackoverflow.com/questions/4084921/what-does-the-git-index-exactly-contains – GoZoner