Как определить, какую ветку / тег я извлек в git? - PullRequest
3 голосов
/ 25 марта 2012

Я клонирую свой источник, используя git clone https://gerrit.wikimedia.org/r/p/mediawiki/core.git w/.Затем я указываю конкретную ветку / тег, выполняя git checkout <tag name> или git checkout origin/REL<release number>.Иногда я забываю, на какой ветке или теге я нахожусь.

В SVN я бы сделал svn info, чтобы выяснить, какую ветку / тег я использую (я понимаю, что git имеет четкие определения для branch и tag, но для моих целей они одинаковы).

Как определить, на какую ветку / тег я нахожусь?

Ответы [ 4 ]

5 голосов
/ 25 марта 2012
git branch

сообщает вам, на какой ветке вы находитесь (с маркером *).

Теги - это просто названия для ревизий, поэтому Git не скажет вам, что вы «на» теге, но вы можете использовать git name-rev HEAD, чтобы понять, что это может быть.

2 голосов
/ 25 марта 2012

Текущая ветвь отмечена * на выходе git branch. Пример:

$ git branch
  branch1
* branch2
  master
0 голосов
/ 11 июля 2019

Как определить, на какой ветке / теге я нахожусь?

Во-первых, начиная с Git 2.22 (Q2 2019) , у вас есть git branch --show-current, который напрямую показывает текущую проверенную ветвь.

Во-вторых, ничего не отобразится, если вы находитесь в извлеченном рабочем дереве (, созданное с помощью git worktree add)

Для этого проверьте Git 2.23 (Q3 2019) с его «git branch --list», который научился показывать ветви, извлеченные в других рабочих деревьях, подключенных к тому же репозиторию с префиксом «+», аналогично тому, как текущая проверенная ветка показана с '*' впереди.

Пример:

git branch in Git 2.23b4

См. коммит 6e93814 , коммит ab31381 , коммит 2582083 (29 апреля 2019) Николай Белаковский (``) .
(Объединено с Junio ​​C Hamano - gitster - в коммит 99eea64 , 09 июля 2019 г.)

branch: добавить worktree информацию о подробном выводе

Чтобы отобразить путь рабочего дерева для ссылок, извлеченных в связанном рабочем дереве

Документация git branch теперь гласит:

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

0 голосов
/ 25 марта 2012

Если вы используете оболочку bash, вы можете использовать __git_ps1 в приглашении bash , чтобы показать это, например:

[me@myhost:~/code/myproject] (master)$ ls

Скачать git-completion.bash*От 1009 * до ~/.git-completion.bash

Затем в свой файл ~/.bashrc добавьте

source ~/.git-completion.bash

Затем установите значение PS1 на что-то, включая $(__git_ps1 "(%s)"), что-то вроде:

PS1="[\u@\h:\w]\$(__git_ps1)\\$ "
...