`git checkout -` 如何在低级别工作

德米特里·彼得罗夫

如何使用 Git 管道命令或状态文件获取先前的分支/提交?

编辑:问题是 - 如何在不执行实际结帐的情况下获取此信息(上一个分支或提交)?这是在 Git 之上工作的工具所需要的,而不是常规 Git 场景所需要的。

齐加恩

通过查看代码

if (!strcmp(arg, "-"))
    arg = "@{-1}";

访问先前签出的分支的方式记录在@{-n} 的修订文档中

现在,要解析后面的分支名称@{-n},解决方案是git check-ref-format --branch

通过该--branch选项,它扩展了“先前的分支语法” @{-n}例如,@{-1}是一种引用您所在的最后一个分支的方法。瓷器应该使用此选项在任何需要分支名称的地方接受此语法,因此它们可以像您键入分支名称一样工作。

$ git check-ref-format --branch @{-1}
my_branch
$ git check-ref-format --branch @{-2}
master

还有git rev-parse --symbolic-full-name解决办法:

$ git rev-parse --symbolic-full-name @{-1}
refs/heads/my_branch
$ git rev-parse --symbolic-full-name @{-2}
refs/heads/master

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章