Как ускорить разработку с помощью GitHub CLI


Подождите, что?!

Мне было сегодня лет, когда я узнал, что у GitHub есть интерфейс командной строки 🤯.

через GIPHY

В официальной документации инструкции по его установке и использованию довольно понятны.

Установка

Я использую brew для установки GitHub CLI, поэтому

brew install gh
Войти в полноэкранный режим Выйти из полноэкранного режима

сделал все волшебство менее чем за минуту.

Авторизация

Вам необходимо авторизовать это приложение, чтобы использовать свой аккаунт GitHub из CLI:

gh auth login
Войти в полноэкранный режим Выйти из полноэкранного режима

Ответьте на несколько вопросов о конфигурации CLI, вот шахты:

? What account do you want to log into? GitHub.com
? What is your preferred protocol for Git operations? SSH
? Upload your SSH public key to your GitHub account? /Users/giulia/.ssh/id_ed25519.pub
? Title for your SSH key: GitHub CLI
? How would you like to authenticate GitHub CLI? Login with a web browser

! First copy your one-time code: XXXX-XXXX
Press Enter to open github.com in your browser...
Войти в полноэкранный режим Выйти из полноэкранного режима

В вашем браузере появится это окно для подтверждения авторизации

и вам нужно будет добавить ваш одноразовый код: XXXX-XXXX, который вам только что выдала подсказка.

Всего несколько подтверждений от оболочки и мы почти закончили:

Press Enter to open github.com in your browser...
✓ Authentication complete.
- gh config set -h github.com git_protocol ssh
✓ Configured git protocol
Вход в полноэкранный режим Выход из полноэкранного режима

Отлично! ✨

Давайте выполним несколько команд!

Чтобы увидеть все конфигурации и опции CLI, просто введите

gh
Войти в полноэкранный режим Выйти из полноэкранного режима

который возвращает список полезных команд, разделенных на подгруппы

CORE COMMANDS
  auth:        Authenticate gh and git with GitHub
  browse:      Open the repository in the browser
  codespace:   Connect to and manage codespaces
  gist:        Manage gists
  issue:       Manage issues
  pr:          Manage pull requests
  release:     Manage releases
  repo:        Manage repositories
Ввести полноэкранный режим Выйти из полноэкранного режима

Как вы можете видеть выше, вы можете управлять многими вещами из командной строки 😈 Ниже я перечислил мои любимые команды.

Создание нового репозитория

Чтобы создать новый репозиторий GitHub, выполните команду

gh repo create test-repository --private

✓ Created repository giuliachiola/test-repository on GitHub
Войти в полноэкранный режим Выйти из полноэкранного режима

Примечание: вы должны указать, хотите ли вы, чтобы репозиторий был приватным или публичным.

Список репозиториев GitHub

gh repo list
Войти в полноэкранный режим Выйти из полноэкранного режима

Это полезно, когда вам нужно проверить на лету slug репозитория, url, или является ли он приватным или нет.

Showing 30 of 47 repositories in @giuliachiola

giuliachiola/super-blog-11ty                       Blog built using 11ty static site generator, based on super-styleguide               public   2d
giuliachiola/super-blog-content                    Blog markdown content where documentation rules 📚                                    public   2d
giuliachiola/giuliachiola                                                                                                                public   9d
giuliachiola/eleventy-styleguide                   Custom pattern library tool using 11ty static site generator.                         public   9d
giuliachiola/super-notes                           Personal tech notes, not always well organized 😇                                     public   9d
giuliachiola/super-styleguide                      Personal blog styleguide built using UIengine as presentation layer                   public   Mar  5, 2022
giuliachiola/react-ts-ecommerce                    📒 Step by step from tutorial "React shopping cart with TypeScript | React Ecomme...  public   Mar  5, 2022
giuliachiola/dotfiles                              🛠.files - for fast MacBook setup                                                     public   Mar  5, 2022
giuliachiola/react-movies                          📒 Step by step from tutorial "React JS Course for Beginners 2021 Tutorial - free...  public   Oct  7, 2021
giuliachiola/react-ts-quiz-app                     📒 Step by step from tutorial "React / Typescript Tutorial - Build a Quiz App - W...  public   Oct  1, 2021
giuliachiola/react-typescript-herrington           📒 Step by step from tutorial "Typescript for React Components From Beginners to ...  public   Oct  1, 2021
...
Войти в полноэкранный режим Выйти из полноэкранного режима

Изменить видимость репо

Изменение видимости репозитория в браузере довольно раздражает, так как приходится пробираться через множество вкладок и панелей пользовательского интерфейса. Изменение видимости из CLI происходит практически мгновенно:

gh repo edit <repo-name> --visibility <visibility-string>
Войти в полноэкранный режим Выйти из полноэкранного режима

Например:

gh repo edit giuliachiola/super-blog-11ty --visibility private

✓ Edited repository giuliachiola/super-blog-11ty
Войти в полноэкранный режим Выйти из полноэкранного режима

Синхронизация репо

Чтобы получить все сразу, вы также можете синхронизировать все ветки репо и конфигурацию:

gh repo sync

✓ Synced the "main" branch from giuliachiola/super-blog-11ty to local repository
Войти в полноэкранный режим Выйти из полноэкранного режима

Создать новый gist

Gist — это своего рода «сниппет», который вы можете хранить на своем аккаунте GitHub. Они очень полезны для сохранения одноразовых конфигураций, и вы также можете сохранять другие gist’ы в избранном!

gh create gist
Вход в полноэкранный режим Выход из полноэкранного режима

через GIPHY

📚 Подробнее

Руководство по GitHub CLI

Оцените статью
devanswers.ru
Добавить комментарий