Git reflog一个特定的分支?

时间:2016-10-24 04:50:15

标签: git git-reflog

我可以重新登录特定分支吗?

git reflog显示回购的所有历史记录。但我想查看一个特定分支的历史记录,比如production。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:15)

the documentation所述,git reflog采用动作动词(称为<subcommand>)和可选修饰符。该操作默认为show,其可选修饰符是要显示的参考名称。

默认设置是在HEAD上显示操作。 (大多数,但全部,“日常”命令在HEAD上和/或通过git reflog进行操作,以便对任何其他参考进行操作。因此production显示所有历史记录实际上都是假的 - 但它确实显示大多数,这可能足够接近。)这使您能够立即明确地回答显示应用于特定的操作的问题branch-name git reflog show production

git reflog show

正如文档所述,git log -g --abbrev-commit --pretty=onelinegit log -g --abbrev-commit --pretty=oneline production 的别名,因此您也可以运行:

-g

获得完全相同的输出。这里的键切换是git log,它指示show遍历给定ref的reflog,而不是从ref指向的提交可以提交的提交。

(你可以继续省略show动词,因为它仍然是默认的,但在这种情况下我会建议包括它 - 例如,如果你的分支名为expire或{{ 1}}这个名字会被误认为是动词!)

答案 1 :(得分:3)

git reflog可以将分支作为参数。与git reflog production

一样