可以从 git 缓存中读取文件吗?

Possible to read file from git cache?

我可以使用下面的命令查看文件列表

git ls-files --cache

想知道是否可以读取所列文件的内容?

您可以使用 checkout-index。此命令将文件从 git 缓存(索引)复制到工作树中。

通常它会覆盖工作副本,但使用参数 --temp 您可以创建文件的副本。

git checkout-index --temp -- myfile.ext

使用git cat-file or git show。例如

for f in `git ls-files --cache`; do
    echo -- "----- File (cat): $f -----"
    git cat-file -p HEAD:$f
    echo -- "----- File (show): $f -----"
    git show HEAD:$f
    echo -- "----- End of File: $f -----"
done