Configurar/Instalar/Usar o `GitHub Command Line Interface (GitHub CLI)` e descrição dos seus principais comandos
Neste documento estão contidos os principais comandos para configurar/instalar/usar o `GitHub Command Line Interface (GitHub CLI)`.
Explore os documentos »
Ver demonstração
·
Relatar bug
·
Solicitar recurso
Configurar/Instalar/Usar o GitHub Command Line Interface (GitHub CLI) e descrição dos seus principais comandos
Neste documento estão contidos os principais comandos para configurar/instalar/usar o GitHub Command Line Interface (GitHub CLI).
This document contains the main commands for configuring/installing/using the GitHub Command Line Interface (GitHub CLI).
O Git é um sistema de controle de versão distribuído amplamente utilizado para rastrear e gerenciar o código-fonte de projetos de desenvolvimento de software. Desenvolvido por Linus Torvalds, o criador do Linux, o Git é conhecido por sua eficiência, flexibilidade e capacidade de trabalhar tanto em projetos individuais quanto em equipes de desenvolvimento. Ele permite que os desenvolvedores acompanhem as alterações feitas no código, revertam para versões anteriores, colaborem em projetos e gerenciem conflitos de maneira eficaz. O Git também é suportado por várias plataformas de hospedagem de código, como o GitHub, o GitLab e o Bitbucket, o que o torna uma escolha central para o desenvolvimento colaborativo e a gestão de código-fonte em projetos de software.
O GitHub Command Line Interface (GitHub CLI) é uma ferramenta de linha de comando que permite aos usuários interagir com o GitHub diretamente pelo terminal, facilitando o gerenciamento de repositórios e a execução de tarefas comuns sem a necessidade de usar a interface web. Com o GitHub CLI, os usuários podem clonar repositórios, criar e gerenciar pull requests, visualizar problemas, e até mesmo publicar projetos, tudo através de comandos simples. Essa interface é especialmente útil para desenvolvedores que preferem trabalhar no terminal e desejam integrar suas operações no GitHub ao fluxo de trabalho de linha de comando, tornando o processo mais eficiente e produtivo.
Para configurar/instalar/usar o Git no Linux Ubuntu, você pode seguir estas etapas:
-
Abra o
Terminal Emulator. Você pode fazer isso pressionando:Ctrl + Alt + T -
Certifique-se de que seu sistema esteja limpo e atualizado.
2.1 Limpar o
cachedo gerenciador de pacotesapt. Especificamente, ele remove todos os arquivos de pacotes (.deb) baixados peloapte armazenados em/var/cache/apt/archives/. Digite o seguinte comando:sudo apt clean
2.2 Remover pacotes
.debantigos ou duplicados do cache local. É útil para liberar espaço, pois remove apenas os pacotes que não podem mais ser baixados (ou seja, versões antigas de pacotes que foram atualizados). Digite o seguinte comando:sudo apt autoclean
2.3 Remover pacotes que foram automaticamente instalados para satisfazer as dependências de outros pacotes e que não são mais necessários. Digite o seguinte comando:
sudo apt autoremove -y
2.4 Buscar as atualizações disponíveis para os pacotes que estão instalados em seu sistema. Digite o seguinte comando e pressione
Enter:sudo apt update
2.5 Corrigir pacotes quebrados: Isso atualizará a lista de pacotes disponíveis e tentará corrigir pacotes quebrados ou com dependências ausentes:
sudo apt --fix-broken install
2.6 Limpar o
cachedo gerenciador de pacotesapt. Especificamente, ele remove todos os arquivos de pacotes (.deb) baixados peloapte armazenados em/var/cache/apt/archives/. Digite o seguinte comando:sudo apt clean
2.7 Para ver a lista de pacotes a serem atualizados, digite o seguinte comando e pressione
Enter:sudo apt list --upgradable
2.8 Realmente atualizar os pacotes instalados para as suas versões mais recentes, com base na última vez que você executou
sudo apt update. Digite o seguinte comando e pressioneEnter:sudo apt full-upgrade -y
Para instalar o GitHub CLI no Linux Ubuntu pelo Terminal Emulator, você pode seguir os seguintes passos:
-
Abra o
Terminal Emulator. -
Adicione o repositório do
GitHub CLI: Execute o seguinte comando para adicionar o repositório oficial doGitHub CLI:sudo apt-add-repository -y ppa:git-core/ppa
-
Atualize a lista de pacotes: Após adicionar o repositório, atualize a lista de pacotes com o comando:
sudo apt update
-
Instale o
GitHub CLI: Agora, você pode instalar oGitHub CLIusando o comando:sudo apt install gh -y
-
Verifique a instalação: Para garantir que o
GitHub CLIfoi instalado corretamente, você pode verificar a versão instalada com o comando:gh --version
Se tudo estiver correto, você verá a versão do GitHub CLI instalada em seu sistema. Agora você pode começar a usar o gh para interagir com seus repositórios do GitHub diretamente do terminal!
-
Digite o seguinte comando para iniciar o processo de autenticação:
gh auth login
-
Escolha a Conta e o Protocolo: Responda às perguntas que aparecem no
Terminal Emulator:2.1 Conta: Selecione
GitHub.com.2.2 Protocolo preferido para operações Git:
Escolha SSH. -
Envie sua Chave Pública SSH: O
Terminal Emulatorperguntará se você deseja enviar sua chave pública SSH para sua conta doGitHub. O caminho padrão geralmente é:/home/seu_usuario/.ssh/id_rsa.pub
-
Autenticação com navegador:
4.1 O
GitHub CLIsolicitará como você deseja se autenticar. Selecione a opção para fazer login com um navegador.4.2 Você verá um código de autenticação de uso único, por exemplo:
First copy your one-time code: 4050-A33D
-
Abra o navegador: Pressione
Enterpara abrir oGitHubem seu navegador padrão. Você será redirecionado para uma página de autenticação. -
Complete a autenticação:
6.1 Cole o código que você copiou anteriormente na página do
GitHube conclua o processo de autenticação.6.2 Após autenticar, volte ao terminal e pressione Enter para continuar.
-
Configure o Protocolo Git: O
GitHub CLIdeve configurar automaticamente o protocolo Git. Você verá uma mensagem de confirmação:✓ Configured git protocol
-
Erros Possíveis: Se aparecer um erro como
HTTP 422: Validation Failed, isso pode indicar que a chave SSH já está em uso. Nesse caso, verifique se a chave pública já está adicionada à sua conta doGitHub.
Agora, você deve ter criado um repositório no GitHub e autenticado sua conta com sucesso usando o GitHub CLI! Se tiver alguma dúvida ou se algo não funcionar como esperado, sinta-se à vontade para perguntar.
-
Entrar na pasta do repositório que será enviado para o
Git:cd <nome_do_repositorio>
Substitua
<nome_do_repositorio>pelo nome que você deseja. -
Caso NÃO possua arquivo
README.mdjá escrito e deseja adicionar um arquivo, execute o comando a seguir:echo " <nome_do_repositorio>" >> README.md
Substitua
<nome_do_repositorio>pelo nome que você deseja. -
Inicializa um novo repositório
Gitno diretório atual:git init
-
Criar o repositório: Com o
GitHub CLI, você pode criar um novo repositório usando:gh repo create <nome-do-repositorio> --private
Substitua
<nome-do-repositorio>pelo nome que você deseja e use--publicou--privatepara definir a visibilidade do repositório. -
Verificar as branches locais: Primeiro, verifique quais branches existem no seu repositório local usando o comando
git branch
Isso lista todas as branches locais.
-
Certifique-se de que a
branch"main"exista: Se não existir ou se não existir nenhuma, você pode criá-la a partir dabranchatual ou mudar para ela usando:git branch -M main
Isso cria uma nova
branch main"baseada nabranchatual. -
Atualizar a URL do Repositório Remoto: Certifique-se de que a URL do seu repositório remoto esteja configurada para usar SSH:
git remote add origin [email protected]:edendenis/<nome-do-repositorio>.git
-
Consultar se a URL do seu repositório local está configurada com o repositório remoto para usar SSH:
git remote -v -
Adicionar um novo repositório remoto chamado
originao seu repositórioGitlocal: Ooriginé o nome padrão usado para referir-se ao repositório remoto principal:git add . -
Fazer um
commit: Após criar abranch"main", você precisa fazer pelo menos umcommitnela. Adicione arquivos, faça ocommite forneça uma mensagem decommit:git commit -m "first commit within branch main" -
Enviar seu repositório local para o
GitHub: Finalmente, envie seu repositório para oGitHub:git push -u origin HEAD:main
Esses comandos permitem que você crie um repositório no GitHub e o gerencie completamente a partir da linha de comando.
Você pode consultar os repositórios diretamente pelo terminal. Aqui está como você pode fazer isso:
-
Após estar autenticado, você pode listar todos os repositórios associados à sua conta com o comando:
gh repo list
Esse comando irá listar todos os repositórios públicos e privados (dependendo das permissões de acesso) associados à sua conta
GitHub.O
GitHub CLI(gh) mostra apenas 30 repositórios por vez por padrão. Para visualizar todos os seus repositórios, você pode adicionar o parâmetro--limitpara aumentar o número de repositórios mostrados.
- Para listar os repositórios até uma determinada quantidade, execute o comando abaixo:
gh repo list --limit 1000Isso deve mostrar até 1000 repositórios, se você os tiver.
Se você ainda não consegue ver todos os repositórios, pode realizar a paginação para listar todos.
- Para listar repositórios de uma organização específica, você pode adicionar o nome da organização, execute o comando abaixo:
gh repo list <organization-name>- Filtrar repositórios: Você também pode filtrar os repositórios usando a opção
--visibility(para listar apenas públicos ou privados):
gh repo list --visibility publicPara filtrar os repositórios com a palavra-chave, por exemplo latex*, você pode usar o comando
grep para encontrar repositórios cujo nome comece com latex (ou qualquer coisa que siga latex):
gh repo list --limit 1000 | grep -i "^latex"-
-i: Faz a busca ser case-insensitive, ou seja, irá buscarlatex,Latex,LATEXetc. -
^latex: O^significa que a busca deve começar com a palavra latex. Se você quiser que a busca seja em qualquer parte do nome do repositório, pode remover o^.
Se você quiser buscar por qualquer repositório que contenha latex em qualquer parte do nome, basta
fazer:
gh repo list --limit 1000 | grep -i "latex"No GitHub, vá no repositório → Settings → Branches → Branch protection rules e crie uma regra para a branch principal (main ou master):
- Require pull request reviews before merging – obriga que alterações passem por PR com revisão.
- Require status checks to pass before merging – exige que checagens (ex.: testes de CI) passem antes do merge.
- Include administrators – se marcado, até administradores precisam seguir a regra.
- Restrict who can push to matching branches – limita quem pode fazer
pushdireto. - Prevent force pushes – bloqueia
git push --force. - Prevent deletion – impede a exclusão da branch protegida.
Em Settings → Manage Access, defina o nível de acesso:
| Role | O que pode fazer |
|---|---|
| Admin | Controle total, inclusive deletar o repositório. |
| Maintainer (Org) | Administração de repositórios da organização. |
| Write | Fazer push, criar branches e abrir PR. |
| Triage | Criar issues e PRs, sem push. |
| Read | Apenas leitura. |
Para evitar que colaboradores alterem main, conceda permissões Write ou Triage, não Admin.
Em repositórios de uma organização, acesse Organization Settings → Repository settings para aplicar políticas globais, como:
- Requerer proteção de branch.
- Restringir deleção de branches.
- Obrigar merges via PR.
Você pode configurar a proteção via GitHub CLI:
gh api -X PUT -H "Accept: application/vnd.github.v3+json" /repos/<owner>/<repo>/branches/<branch>/protection -f required_status_checks=null -f enforce_admins=true -f restrictions='{"users":[],"teams":[]}' -f allow_force_pushes=false -f allow_deletions=falseCampos:
<owner>– dono do repositório.<repo>– nome do repositório.<branch>– branch a proteger.allow_force_pushes=false– bloqueiagit push --force.allow_deletions=false– impede deletar a branch.restrictionsvazio mantém permissões atuais.
Exemplo: proteger a branch main do repo edftechnology/coolprop.
Para convidar alguém:
gh repo add-collaborator <OWNER>/<REPO> <USERNAME> --permission <PERMISSION>Permissões disponíveis: pull, triage, push, maintain, admin.
Exemplo:
gh repo add-collaborator edendenis/myrepo johndoe --permission pushO usuário recebe um convite e precisa aceitá-lo no GitHub.
Distribuído sob a licença MIT. Consulte LICENSE.txt para obter mais informações.
-
Adicionar registro de alterações
-
Adicionar links de volta ao topo
-
Adicionar modelos adicionais com exemplos
-
Suporte multilíngue
-
Espanhol
-
Inglês
-
Português
-
Português brasileiro
-
Consulte os problemas abertos para obter uma lista completa dos recursos propostos (e problemas conhecidos).
As contribuições são o que tornam a comunidade de código aberto um lugar incrível para aprender, inspirar e criar. Qualquer contribuição que você fizer será muito apreciada.
Se você tiver uma sugestão que possa melhorar isso, bifurque o repositório e crie uma solicitação pull. Você também pode simplesmente abrir um problema com a tag “aprimoramento”.
Não se esqueça de dar uma estrela ao projeto! Obrigado novamente!
-
Bifurque o projeto
-
Crie sua ramificação de recursos (
git checkout -b feature/AmazingFeature) -
Confirme suas alterações (
git commit -m 'Add some AmazingFeature') -
Envie para a filial (
git push origin feature/AmazingFeature) -
Abra uma solicitação
pull
[1] OPENAI. Instalação do github cli. Disponível em: https://chatgpt.com/c/67042c07-816c-8002-8913-7c8cdbc167a9 (texto adaptado). ChatGPT. Acessado em: 07/10/2024 15:49.
[2] OPENAI. Vs code: editor popular: Disponível em: https://chat.openai.com/c/b640a25d-f8e3-4922-8a3b-ed74a2657e42 (texto adaptado). ChatGPT. Acessado em: 07/10/2024 15:49.