gpt4 book ai didi

git - git索引在哪里?

转载 作者:太空狗 更新时间:2023-10-29 14:01:01 24 4
gpt4 key购买 nike

在 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 时它正在构建一个文件列表是暂存的,它们的哈希值基于工作目录中的文件和在此索引文件中列为已修改的文件。这是正确的吗?

最佳答案

位于 .git/index 的索引文件不是文本文件,而是一个二进制文件,其中包含有关索引的必要信息,就是索引。 p>

我不明白你想用 git status 输出说什么。 git status 甚至输出未跟踪的文件。你是说索引也有未跟踪文件的知识吗?当然不是。

关于git - git索引在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15352894/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com