试图解释'git log --graph'的输出

时间:2013-04-30 18:53:57

标签: git version-control

我在本地分支上做了'git --reset hard origin/master'所以我希望我的本地分支与远程分支完全匹配。但是,当我这样做时:

git log --graph --oneline --decorate --all

我在顶部得到以下输出:

*   dfd9bc6 (refs/stash) On z_tmp2: tmp1
|\  
| * 49f3b6f index on z_tmp2: 84e2002 localconfig
|/  
* 84e2002 localconfig
| * 1110f48 (origin/congo-3.1-stable) Boiler plate code to support

提交84e2002,49f3b6f和dfd9bc6似乎是本地工作,但我会被'reset --hard'消灭,但显然我错过了一些东西。

1 个答案:

答案 0 :(得分:1)

reset不会删除任何内容,它只会将分支重置为不同的提交。

正如您在日志输出中看到的那样,您仍然有一个ref(refs/stash,您的默认stash)指向您的旧提交。

如果您不再需要这些提交并希望让它们从日志中消失,请使用

git stash drop

一旦不再引用提交,Git对象存储的实际删除将在下一次运行Git的垃圾收集器时发生。但除非你有磁盘空间问题,否则你可能不必担心。