如何从 git rm 恢复跟踪状态 --缓存 .



我刚刚修改了项目中的 10 个文件,并希望提交所有这 10 个文件。我所做的是:

git add -A

然后我发现此命令添加了许多未跟踪的文件,因此我尝试从提交中删除这些未跟踪的文件。

我做的(错误)是:

git rm -r --cached .

然后我发现我忘记了所有文件。是否有任何命令可以恢复我的跟踪文件状态?

根据我在测试 git 存储库中所做的工作,git rm -r --cached . 不会从磁盘中删除文件或还原对磁盘的更改,但会取消暂存它们。

这是我所做的

$git init
$touch test
$echo "Hello" > test
$git add .
$git commit -m "First commit"
$echo "Fellow" >> test
$git add .
$git rm -r --cached .
$cat test
hello
fellow

因此,您唯一需要做的就是重新添加这些文件。

我认为没有任何方法可以添加跟踪,因为您已经删除了跟踪。软重置到当前 HEAD 可能能够检索跟踪,但我还没有尝试过。