在git中没有真正删除过的东西吗?

all*_*skd 7 git

我正在学习git,通常我对VCS有点怀疑,因为我很难习惯它们.

我删除了一个名为"experimental"的分支,其中包含一些tmp文件,我在工作目录中看到了删除的文件,所以我摸不着头脑,想知道这是否正常,我是否可以把它带回来,以防我再次需要它等等.

我发现SHA提交了tmp文件并使用提供的sha重新创建了分支,并再次查看了所有文件及其当前内容.

我提交后,我在工作目录中所做的一切都可以恢复?

对许多人来说,这似乎是一个愚蠢的问题,但它有点让我着迷,所以我想知道极限

3le*_*gos 7

如果您已对文件提交了相应的更改,则几乎所有操作都可以撤消.即使强制删除分支或进行硬重置,也可以使用git reflog或找到松散的提交对象git fsck.

但是,松散的物体偶尔会被清理干净git gc,因此一段时间后无法恢复.