Использование Git в командной строке (CLI) может повысить вашу скорость разработки и эффективность. В этой статье рассмотрим восемь полезных команд для работы с GitHub через терминал.
Разработчики стремятся использовать инструменты, которые кажутся им наиболее удобными. В GitHub мы понимаем, что разработчики хотят работать с GitHub по-разному. Это включает использование GitHub через веб-интерфейс или облегчённый веб-редактор GitHub.dev. Разработчики могут получить полноценный редактор кода в интернете с помощью Codespaces, интеграции GitHub с различными редакторами, такими как VS Code или JetBrains, и даже использовать GitHub Desktop или GitHub на мобильных устройствах через GitHub Mobile. А знаете ли вы, что GitHub можно также использовать напрямую из терминала?
GitHub и терминал
В недавне статье мы рассказывали о командах Git, которые можно выполнять прямо из терминала. Каждый разработчик использует эти базовые концепции Git, однако далеко не все работают с Git через командную строку. Тем не менее, это может значительно улучшить вашу скорость разработки и эффективность. Именно здесь вы можете стать опытным пользователем GitHub, используя команды GitHub CLI в терминале вместе с командами Git.
GitHub CLI переносит весь функционал GitHub в ваш терминал, что позволяет вам иметь полный рабочий процесс GitHub, доступный из командной строки. Больше никакого переключения контекста, что помогает сохранять сосредоточенность: вместо того, чтобы работать с Git в командной строке и переключаться в браузер для выполнения задач, связанных с GitHub (таких как создание задач, обзор пул-реквестов или редактирование репозиториев), вы можете выполнять всё это прямо из терминала. Это значит, что у вас будет больше времени на написание кода.
Если вы уже знакомы с GitHub и у вас установлена операционная система Windows, Mac или Linux, то это руководство для вас. Рассмотрим начало работу с GitHub CLI и несколько полезных команд для удобного управления вашими проектами.
Установка GitHub CLI
Чтобы начать, скачайте и установите GitHub CLI. Следуйте инструкциям для загрузки версии для Windows, Mac или Linux из репозитория GitHub CLI или из открытой документации. После установки GitHub CLI откройте терминал и проверьте, установлен ли CLI, выполнив команду gh
. Если вы используете Windows, то при корректной установке GitHub CLI вы увидите что-то подобное:
Если хотите узнать, установлена ли у вас самая последняя версия GitHub CLI, выполните команду gh --version
, чтобы посмотреть текущую версию.
После установки CLI необходимо выполнить аутентификацию в GitHub для продолжения работы. Для этого выполните команду gh auth login
. Следуйте шагам, описанным в документации GitHub CLI, чтобы убедиться, что аутентификация выполнена с использованием правильных учётных данных.
8 самых полезных команд GitHub CLI
Эти команды станут основой вашей работы как разработчика. Вы будете использовать их практически каждый раз при работе над проектом.
Учтите, что я работаю на машине с Windows, поэтому приведённые примеры основаны на использовании Windows PowerShell.
1. Создание и клонирование репозиториев в локальной среде
При работе с новым проектом вам необходимо создать место для его размещения. Это можно сделать всего за несколько шагов с помощью GitHub CLI. Чтобы создать репозиторий, сначала перейдите в каталог, где вы хотите разместить ваш новый проект, и выполните команду gh repo create
:
Мы можем затем клонировать этот новый пустой репозиторий:
Вы также можете клонировать любой репозиторий, используя команду gh repo clone <OWNER/REPO>
. Например, выполните gh repo clone cli/cli
, чтобы клонировать репозиторий GitHub CLI. Да, всё верно — GitHub CLI является open-source проектом.
Использование команды gh repo clone
вместо git clone
упрощает аутентификацию и конфигурацию Git, снижая необходимость в ручных настройках и, таким образом, ускоряя рабочий процесс.
Другие полезные команды для работы с репозиториями:
gh repo list
— показывает список всех репозиториев, принадлежащих вашему пользователю.gh repo edit <OWNER/REPO>
— редактирование настроек конкретного репозитория.gh repo delete <OWNER/REPO>
— удаление определённого репозитория.
Существует множество других полезных команд для работы с репозиториями. Полный список, включая доступные флаги, вы можете найти в документации GitHub CLI.
2. Быстрое отображение, создание и редактирование задач (issues)
Теперь, когда у вас есть новый репозиторий в вашей среде разработки, вы можете использовать терминал для работы над проектом. Начнём с задач (issues). Задачи — это своего рода трекеры для вашего проекта. Они могут быть связаны с созданием новой фичи или исправлением ошибок.
Просматривая список задач, вы можете выбрать ту, над которой хотите работать, или получить общий обзор текущих задач, назначенных для проекта. Используйте команду gh issue list
, чтобы отобразить список ваших открытых задач:
Чтобы посмотреть этот список, убедитесь, что ваш терминал находится в каталоге репозитория, над которым вы хотите работать. Например:
.\cli
в приведённой выше демонстрации или.\my-awesome-project
для нового репозитория, который мы создали в первом примере.
Вы можете создавать задачи прямо из командной строки, используя команду gh issue create
и следуя подсказкам для открытия новой задачи. Затем используйте gh issue list
, чтобы увидеть список задач для данного репозитория, или gh issue view
, чтобы просмотреть конкретную задачу:
Вы также можете редактировать задачи, используя команду gh issue edit
, или попробовать запустить блокнот (Notepad) во время создания задачи, чтобы добавить описание.
Ещё одна полезная команда — gh issue status
, которая показывает текущий статус всех открытых задач в репозитории и их отношение к вам:
Существует множество других полезных команд для работы с задачами. Полный список вы можете найти в документации GitHub CLI.
3. Переключение на ветки, обзор и слияние пулл-реквестов
Вместо того чтобы открывать GitHub.com и работать с пулл-реквестами через веб-интерфейс, мы можем выполнять всю эту работу через терминал. Для работы с пулл-реквестами есть несколько полезных команд. После того как вы перейдёте в каталог своего репозитория, выполните команду gh pr list
, чтобы посмотреть список открытых пулл-реквестов. Вы увидите список всех открытых пулл-реквестов в репозитории, включая черновики:
Обратите внимание, что пулл-реквесты, отображаемые серым цветом, являются черновиками. Черновые пулл-реквесты создаются, когда мы активно работаем над изменениями, но они ещё не готовы к слиянию. Черновые пулл-реквесты позволяют начать сотрудничество, даже если ваш код ещё не полностью завершён.
Вы также можете создать пулл-реквест прямо из терминала. Для этого можно использовать комбинацию команд Git и GitHub. Например, команда git checkout
переключает вас на нужную ветку репозитория. Затем используйте команду gh pr create
, чтобы создать пулл-реквест. Следуя подсказкам в терминале, вы сможете открыть пулл-реквест.
Вот пример работы со списком пулл-реквестов: используйте git checkout
, чтобы убедиться, что вы находитесь в нужной ветке с изменениями, которые хотите объединить. Затем выполните команду gh pr create
, чтобы создать пулл-реквест. Следуя подсказкам, вы можете открыть блокнот (Notepad) для добавления описания пулл-реквеста. Поскольку я ещё не тестировал эти изменения, я создаю данный пулл-реквест как черновик. Наконец, я могу использовать gh pr list
, чтобы увидеть список пулл-реквестов в репозитории, включая только что созданный черновой пулл-реквест:
Вот ещё несколько полезных команд для работы с пулл-реквестами:
gh pr status
— посмотреть статус пулл-реквестов и их отношение к вам.gh pr checkout
— переключиться на определённую ветку и посмотреть информацию о ней. Это мощная команда: как рецензент, вы можете быстро загрузить ветку и протестировать изменения локально перед перед одобрением или слиянием пулл-реквеста.gh pr merge
— выполнить слияние пулл-реквеста.
Полный список команд для работы с пулл-реквестами, включая доступные флаги, вы найдёте в документации GitHub CLI.
4. Создание и просмотр релизов для вашего проекта
При работе над проектом может быть полезно управлять его релизами. Релиз — это программный пакет, который включает примечания к релизу и бинарные файлы, доступные для использования другими. Вы можете создать новый релиз с помощью команды gh release create
и следовать подсказкам для создания релиза:
Используйте команду gh release list
, чтобы посмотреть список релизов конкретного проекта, и gh release view
, чтобы просмотреть детали определённого релиза.
5. Мониторинг рабочих процессов GitHub Actions
Ни один проект не обходится без GitHub Actions, и теперь вы можете управлять и запускать свои GitHub Actions из командной строки. GitHub Actions — этоплатформа автоматизации, которая позволяет автоматизировать проект от идеи до выпуска. Вы можете собрать, протестировать и развернуть ваш проект прямо из GitHub с использованием GitHub Actions.
Если вы путаетесь в терминах «действие» (action) и «рабочий процесс» (workflow), ознакомьтесь с нашим руководством по различиям между GitHub Actions, actions и workflows.
Используйте команду gh workflow list
, чтобы просмотреть список всех доступных рабочих процессов.
Этот список показывает рабочие процессы, настроенные владельцем репозитория. У каждого проекта будут свои типы и количество рабочих процессов. После того как вы увидите полный список доступных рабочих процессов в репозитории, используйте команду gh workflow run
, чтобы выбрать и запустить конкретный процесс.
Например, если вы хотите запустить действие «code scanning», приведённое выше, вы можете использовать gh workflow run 1208059
, чтобы запустить этот процесс. Для выполнения этой команды вам понадобятся административные права на репозиторий.
Вот пример работы с репозиторием, к которому у меня есть доступ: как я могу запустить определённый процесс и увидеть его выполненные запуски.
6. Создание и редактирование меток (labels)
Метки играют важную роль в эффективном управлении проектами. Они помогают группировать задачи (issues) и сортировать их с помощью цветовой кодировки, что облегчает их распределение и приоритизацию. Вы можете увидеть список всех меток репозитория, выполнив команду gh label list
. Затем используйте gh label create
, чтобы добавить новую метку, или gh label edit
, чтобы отредактировать существующую метку:
7. Проверка вашего статуса в GitHub
Одна из самых полезных команд — это команда для проверки статуса вашего аккаунта в GitHub. Выполните gh status
, чтобы получить информацию о вашем статусе. Это включает:
назначенные вам задачи (issues),
пулл-реквесты, которые ожидают вашего ревью,
другую активность в репозиториях.
8. Добавление новых функций в GitHub CLI с помощью расширений
Мы уже рассмотрели некоторые полезные команды для работы с GitHub. Но как поступить, если вам нужно сделать что-то, что здесь не упомянуто? Поскольку GitHub CLI является проектом с открытым исходным кодом, многие разработчики — как из GitHub, так и из сообщества — создают расширения для GitHub CLI. Эти расширения добавляют дополнительные возможности в вашу командную строку.
Вы можете просмотреть все доступные расширения для GitHub CLI через терминал, выполнив команду gh ext browse
, и увидеть краткое описание каждого расширения и его функциональности.
Если есть расширение, которое вы хотите установить, используйте команду gh ext install <OWNER/REPO>
.
Бонус. Нужна помощь?
Что делать, если вы не можете вспомнить какую-то команду? Используйте gh help
, чтобы просмотреть список полезных команд.
Заключение
Теперь, когда мы рассмотрели, как использовать GitHub CLI в терминале, начните практиковать эти команды. Если вам нравится работать в терминале, это поможет сократить смену контекста и позволит проводить больше времени там, где вам комфортно — в командной строке.
Но что делать, если вы застряли в терминале? Да, вы можете использовать gh help
, чтобы получить полезные подсказки о том, что делать дальше, но это часто оказывается недостаточным или не совсем тем, что вы ищете. Если вы столкнулись с этим, GitHub готов помочь. Следующая статья будет посвящена тому, как использовать GitHub Copilot в CLI, чтобы выйти из затруднительной ситуации, если вы сталкиваетесь с ошибками или не можете вспомнить определённую команду.
Больше актуальных навыков по разработке приложений вы можете получить в рамках практических онлайн-курсов от экспертов отрасли.
Также приглашаем начинающих разработчиков на открытый урок, посвященный основам многопоточности в Java. Подробности и запись — по ссылке. Полный список всех открытых уроков по разным ИТ-направлениям можно посмотреть в календаре.