git:当处于分离的HEAD状态时,如何获取当前分支中最新提交的哈希值?

时间:2014-04-19 15:25:46

标签: git

如何获取最新提交的哈希值?

  1. 处于分离的HEAD状态时
  2. 未明确指定分支
  3. git rev-parse HEADgit log -n 1 --format="%H"都遵循分离的HEAD(显然)。

    git rev-parse master让我输入分支。

    我猜测分离的HEAD状态没有分支的概念,但你看到了我的意图吗?我一直都在掌握,所以我不想只是因为我正在查看之前的提交而明确指定它。

    this question相同,但是对于分离的HEAD状态。

    谢谢!

2 个答案:

答案 0 :(得分:2)

问题在于,您所处的提交(与头部分离)实际上可能位于多个分支上。如果您只想要显示一个分支,那么您必须找出一些方法在它们之间进行选择。但是,如果你很高兴看到包含你当前提交的所有分支(带有哈希),你可以说

git branch -v --contains HEAD

这里有一些示例输出:

* (detached from 0bc85ab) 0bc85ab Git 1.9.2
  master                  cc29195 Git 2.0-rc0

你可以用grep和/或awk修剪它。

答案 1 :(得分:0)

To refer to "the n‍th previous branch I checked out", use @{-n}

git rev-parse @{-1}

这确实是一个分支参考:

git checkout @{-1}

会让你离开那个分支。