我的工作流程通常包含以下内容:
是否有任何git历史可以告诉我,我之前处理的事情是分支A?
答案 0 :(得分:6)
尝试:
git reflog
将列出所有最近改变了某些内容的行为,因此结帐,退款,拉取,推送等等。
它还包括所有提交ID,例如,如果您执行了十几个commit --amend
,则可以跳回到中间的一个。
答案 1 :(得分:2)
正如gitrevisions中所述,语法@{-number}
指的是签出号之前发生的分支。这使用 reflogs ,特别是HEAD
的reflog;见Duncan's answer。
(在您的特定示例中,您需要@{-1}
。对于git checkout
,您可以将其缩写为git checkout -
,但这仅适用于git checkout
。)
答案 2 :(得分:0)
尝试:
git branch --sort=-committerdate
或
git for-each-ref --sort=-committerdate refs/heads/
答案 3 :(得分:0)
git checkout -
转到之前使用的分支
我还设置了这个别名,用于打印我工作过的最后10个分支:
[alias]
recent = for-each-ref --count=10 --sort=-committerdate refs/heads/ --format='%(refname:short) %(committerdate:relative)'