gpt4 book ai didi

git rm --cached 和 'deleted' 状态

转载 作者:太空狗 更新时间:2023-10-29 12:51:41 26 4
gpt4 key购买 nike

我想知道为什么我这样做:

git add <file>

然后,我会:

git rm --cached <file>

文件在阶段区域中保持已删除状态。

举个例子: enter image description here

只是寻找有关文件“已删除”状态的解释。

谢谢

最佳答案

试试 git reset HEAD yourFile ,而不是 git rm --cached

混合重置将从索引中删除您的文件,而不会将其从工作树中删除。
参见“Undo ' git add ' before commit”。

在您的情况下, git stash 需要先于 git reset ,然后 git stash pop 将在重置后恢复您正在进行的更改。


关于 deleted 之后的“git rm --cached ”状态,该命令在索引中注册了文件的删除,这就是为什么您会看到它在下一次提交时被记录为“已删除”。

OP Ferpega insists:

I am asking why the deleted status is there as resulting of git rm --cached because this command should has the same behavior than git reset HEAD <file> as you can see in git rm.

嗯,不, git rm 的行为与 [ git reset][8] 不同。
两者都会影响索引,但是:

  • 一个(git rm)将记录一个文件,以便在下一次提交时删除,因此是“deleted”状态,
  • 另一个 ( git reset ) 将 HEAD 复制到索引,将所述索引重置回 HEAD 中的文件。

关于git rm --cached 和 'deleted' 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15455686/

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