假设我使用git read-tree <sha>
without -um
(因为我不想要合并而是想要简单的读取)。
现在我想在不改变任何引用的情况下完成最后一步的操作git reset --hard
(使工作树等于索引)。
是否存在一个机制git
可以做到这一点?
同等地,有没有一种方法可以在语义上执行git read-tree -u
不进行任何类型的合并,而是简单地用给定树的内容覆盖索引和工作树?
我试过了git checkout-index -a -f
,但它不会删除工作目录中的文件,只会添加它们。
我认为这就是
git restore -- .
(设置工作树就像索引一样)。现在,您的最后一条评论让我认为您正在寻找git restore --worktree --staged --source <some-commit-id> -- .
将调整索引和工作树以使其看起来就像您提供的提交 ID 一样的东西。