Чтобы проверить ветку Git для окна Терминала на Mac, выполните в этом окне команду git branch --show-current. Git выведет ветку, извлеченную для репозитория в текущем расположении командной оболочки. Если ничего не выводится, возможно, извлечение находится в состоянии detached HEAD; если Git сообщает, что это не репозиторий, сначала проверьте каталог окна.
Проверка ветки в текущем окне Терминала
Щелкните по окну Терминала, которое вы хотите проверить, затем введите следующую команду и нажмите Return:
git branch --show-current
Например, вывод вида feature/search означает, что эта командная оболочка находится в рабочем дереве Git с извлеченной веткой с таким именем. Эта команда сообщает имя текущей ветки, не выводя список всех веток. Согласно документации Git, команда ничего не выводит в состоянии detached HEAD, когда указатель ссылается непосредственно на коммит, а не на именованную ветку. Документация Git по git branch
Ответ относится к каталогу, из которого запускается команда. Каждое окно или вкладка Терминала может иметь свой собственный текущий каталог, поэтому запускайте команду именно в том окне, которое вы хотите проверить. Если у вас открыто несколько похожих окон, перед выполнением действий проверьте не только ветку, но и каталог проекта.
Подтверждение проекта, в котором находится окно
Выполните pwd, чтобы вывести текущий каталог командной оболочки. Затем используйте Git, чтобы определить корневой каталог рабочего дерева:
pwd
git rev-parse --show-toplevel
Первая команда показывает текущее расположение; вторая выводит корень репозитория, если текущий каталог принадлежит рабочему дереву. Согласно документации Git, --show-toplevel сообщает об ошибке, если рабочее дерево отсутствует. Документация Git по git rev-parse
Эта дополнительная проверка полезна, когда два проекта используют похожие имена веток или когда командная оболочка находится во вложенной папке. В подкаталоге репозитория Git все равно определяет содержащее его рабочее дерево и извлеченную ветку. Путь служит полезным подтверждением того, какой именно проект вы просматриваете; сама по себе команда проверки ветки не идентифицирует проект по имени.
Использование git status для повторной проверки
Для быстрой комбинированной проверки выполните:
git status -sb
Краткий формат статуса с флагом -b включает строку с веткой и компактную сводку изменений файлов. Например, ## main указывает, что ветка — main; дополнительный текст может описывать статус отслеживания. git status также помогает вовремя заметить измененные, подготовленные к коммиту (staged) или неотслеживаемые файлы. Согласно документации Git, флаг -b показывает ветку и информацию об отслеживании в кратком формате. Документация Git по git status
Определение ветки и статус файлов отвечают на разные вопросы. Имя ветки показывает, какая именно именованная ветка извлечена; остальная часть вывода статуса сообщает, есть ли изменения в рабочем дереве. Чистый статус не означает, что ветка синхронизирована с удаленным репозиторием, а само по себе имя ветки не показывает, редактировались ли файлы.
Если команда не показывает ветку
Если Git сообщает, что текущий каталог не является репозиторием, командная оболочка может находиться в вашей домашней папке, другом проекте или каталоге за пределами рабочего дерева. Используйте pwd, чтобы узнать, где вы находитесь. Если вы знаете расположение проекта, перейдите в этот каталог с помощью cd и снова выполните команду проверки ветки. Например, замените пример пути на фактический путь к вашему проекту:
cd ~/Projects/sample-project
git branch --show-current
Если вы уже находитесь в репозитории, но команда проверки ветки ничего не возвращает, проверьте git status -sb. Поведение --show-current, описанное в документации Git, заключается в том, что в состоянии detached HEAD ничего не выводится. В выводе статуса может отображаться (HEAD detached at ...); в этом состоянии локальное имя текущей ветки отсутствует. Не следует ориентироваться на последнюю ветку, которую вы помните, принимая ее за текущую.
Как сделать проект более узнаваемым в Терминале
Терминал macOS может отображать рабочий каталог в заголовке окна или вкладки. Чтобы настроить это, откройте Терминал > Настройки, выберите Профили, выберите профиль, используемый окном, и нажмите Окно, чтобы выбрать отображаемую в заголовке информацию, такую как рабочий каталог или путь к нему. Заголовки вкладок имеют собственные настройки в разделе Профили > Вкладка. Apple отмечает, что настройки профиля применяются к выбранному профилю, поэтому проверьте используемый профиль, если заголовок не меняется. Руководство Apple по Терминалу: заголовки окон и Руководство Apple по Терминалу: заголовки вкладок
Заголовок с каталогом помогает различать расположения проектов, но сам по себе не показывает ветку Git. Для точной проверки ветки выполните git branch --show-current в соответствующем окне; используйте git status -sb, если вам также нужен компактный обзор изменений и информации об отслеживании.