GitHub CLI
gh encapsula as APIs do GitHub para PRs, issues, Actions e releases a partir do terminal - o caminho mais rápido de cargo test verde para revisão solicitada.
Receita
gh auth login
gh pr create --fill --web
gh pr checks
gh run watchQuando usar isso:
- Criar PRs após
git push - Monitorar a matriz de CI do Rust sem sair do terminal
- Baixar logs de fluxos de trabalho com falha
- Disparar releases
workflow_dispatch
Exemplo de Trabalho
git push -u origin feat/api-42-health
gh pr create \
--title "feat(api): rota de saúde [API-42]" \
--body "Adiciona /health e /ready para probes do k8s." \
--reviewer teammate
gh pr checkout 128
cargo test
gh pr comment 128 --body "cargo test verde localmente em 1.97.0"
gh run list --workflow ci.yml --limit 3
gh run view <id> --log-failedO que isso demonstra:
--fillusa mensagens de commit para título/corpo do PRpr checkoutintegra-se com o git localrun view --log-failedmostra falhas de clippy/teste rapidamente
Mergulho Profundo
Aliases Úteis
gh alias set co 'pr checkout'
gh alias set rv 'pr view --web'Assets de Release
gh release create v1.2.0 \
target/release/my-cli-x86_64-unknown-linux-gnu \
--notes-file CHANGELOG.mdArmadilhas
- Remote do repositório errado -
ghtem como alvo o URL de origem. Correção:gh repo set-default. - Escopo de token ausente - não é possível disparar fluxos de trabalho. Correção:
gh auth refresh -s workflow. - Criação de PR em árvore suja - ainda funciona, mas confunde os revisores. Correção: fazer push apenas dos commits pretendidos.
- Download de log grande - terminal lento. Correção: filtro
--log-failed. - Host corporativo - requer
GH_HOSTough auth login --hostname.
Alternativas
| Alternativa | Usar Quando | Não Usar Quando |
|---|---|---|
| Interface web do GitHub | Templates de PR complexos | Loop diário de criação/monitoramento |
hub (legado) | Scripts antigos | Novas configurações - usar gh |
| Graphite / CLI empilhada | Fluxo de trabalho de PRs empilhados | PR simples único |
FAQs
gh vs git?
git gerencia objetos e refs; gh gerencia recursos da plataforma GitHub.
CI de fork PR?
Mantenedores usam gh workflow run ou aprovam pull_request_target de acordo com a política de segurança.
Codespaces?
gh pré-instalado; gh cs gerencia codespaces quando habilitado.
Relacionado
Versões da Pilha: Esta página foi escrita para Rust 1.97.0 (edição 2024), Tokio 1.x, Axum 0.8, serde 1.0, sqlx 0.8, clap 4 e Polars 0.46+.