如何使用 Git 管道命令或状态文件获取先前的分支/提交?
编辑:问题是 - 我如何在不执行实际结帐的情况下获取此信息(上一个分支或提交)?这对于在 Git 上运行的工具是必需的,而不是常规 Git 场景。
如何使用 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