Есть ли способ вывести предыдущее имя ветви git?


Этот ответ рассказывает, как перейти в предыдущую ветку, и услужливо объясняет @{-1}: https://stackoverflow.com/a/7207542/3150057

Предыдущая ветвь важна, если я спрятал некоторый код перед сменой ветви, и теперь думаю о работе над тайником.

Есть ли способ быстро просмотреть имя предыдущей ветви без поиска git reflog show последней записи checkout: moving from foo to bar?


Дополнительная информация:

Это решение моей забывчивости мой предыдущий рабочий контекст, который обычно происходит после возвращения с обеда.

git rev-parse @{-1} показывает головную фиксацию ветви, которая будет проверена с помощью git checkout - , но не имя ветви.

git branch --contains @{-1} перечислит каждую ветку с этим коммитом.

Перечисление ветви (ов) с этим коммитом в качестве главы было бы полезно, поскольку это могло бы напомнить мне о моем предыдущем рабочем контексте, но я не уверен, как это сделать.

1 2

1 ответ:

Может быть, это то, что вы хотите:

git describe --all $(git rev-parse @{-1})

Из справочной страницы git-describe:

--all

Вместо использования только аннотированных тегов используйте любые ссылки, найденные в ссылках/ пространство имен. Этот параметр позволяет сопоставить любую известную ветвь, ветвь дистанционного слежения, или облегченная бирка.

Так, например, если я сделаю это:

$ git checkout mybranch
$ git checkout master
$ git describe --all $(git rev-parse @{-1})

Я вижу:

heads/mybranch