Neste artigo, o(a) senhor(a) vai entender o que é Git e para que ele serve, criar o primeiro repositório no GitHub e configurar o ambiente de trabalho. Vamos usar o Git pela interface gráfica da IDE de propósito: fica mais visual e tranquilo no começo, sem precisar decorar dezenas de comandos.
Os exemplos e as capturas de tela mostram as IDEs da JetBrains; os nomes e a posição das ações podem variar conforme a sua versão. Para praticar, use um repositório de estudo separado. No projeto de trabalho, siga as regras dele para branches, commits e envio de alterações.
Essa abordagem também tem outro objetivo. Por baixo dos panos, o Claude Code faz exatamente as mesmas operações de Git, só que usando comandos no terminal. Quando ele sugere criar um commit, abrir uma branch ou enviar alterações, são comandos comuns do Git que estão por trás disso. Entendendo o que acontece por trás dos botões da IDE, o(a) senhor(a) também vai entender o que o Claude Code propõe e poderá conferir e aprovar isso conscientemente.
Para que serve o controle de versão
Quando o(a) senhor(a) começa a trabalhar num projeto, parece que o mais importante é o código funcionar. Mas logo fica claro que o código muda mais vezes do que permanece estável. O(a) senhor(a) corrige um bug, adiciona uma feature, muda de ideia, desfaz e adiciona de novo.
Imagine que o(a) senhor(a) está trabalhando no seu projeto. Tudo vai bem até chegar a hora de experimentar. Então decide mudar alguma coisa, mas tem medo de quebrar a versão que funciona. O que fazer? Claro, copiar o projeto. No fim, o disco fica cheio de obras-primas como estas:
MyProject/
├── main.py
├── main_backup.py
├── main_final.py
├── main_final2.py
├── main_really_final.py
├── main_really1_really_final2.pyParece familiar? Agora imagine que mais um amigo entrou no projeto. Ele também gosta de copiar arquivos, só que do jeito dele. Como saber qual é a versão mais recente e que está funcionando? Como descobrir quem mudou o quê? E como voltar atrás se o experimento der errado?
Sem um histórico salvo, o(a) senhor(a) precisa comparar as cópias dos arquivos manualmente:
- é fácil perder ou confundir o código que funciona;
- não há um jeito único de encontrar e restaurar uma versão salva;
- fica difícil trabalhar em duas ou três pessoas;
- vira uma bagunça, e experimentar dá receio.

São justamente esses problemas que os sistemas de controle de versão, como o Git, resolvem.
Vídeo - fundamentos do Git no terminal
Este vídeo apresenta uma base sólida para trabalhar com Git pelo terminal e ajuda a entender a mecânica por trás das ações feitas pelos botões da IDE.
Os exemplos do vídeo usam Java, mas as operações principais do Git são iguais em diferentes linguagens.
Assistir ao vídeo sobre os fundamentos do Git
O que é Git - conceitos básicos
Git é um sistema de controle de versão usado para acompanhar as mudanças no código durante o desenvolvimento. Ele permite salvar diferentes versões dos arquivos e coordenar o trabalho de várias pessoas no mesmo projeto.
Repositório (ou "repo") é o lugar onde fica todo o histórico do projeto: todas as mudanças e versões dos arquivos.
Commit é um snapshot salvo do conteúdo rastreado do projeto, acompanhado de uma mensagem, informações sobre o autor e referências aos commits pais. Arquivos sem commit e arquivos ignorados não entram nesse snapshot. Com o histórico, dá para encontrar e restaurar uma versão salva anteriormente.
Cada commit registra um snapshot do projeto e se conecta ao anterior, formando um histórico sequencial de mudanças.
Branch é um nome que aponta para o commit atual de uma linha de desenvolvimento. Nos exemplos, a branch principal se chama main; no seu repositório, o nome pode ser diferente. Isso depende das configurações e de como o repositório foi criado.
A branch develop parte da branch principal main para permitir o desenvolvimento em paralelo. Quando o trabalho termina, as alterações de develop são integradas de volta à main.
Comandos principais do Git - o que acontece por baixo dos panos
Abaixo está uma lista dos principais comandos para trabalhar com Git pelo terminal. Vamos usar a interface gráfica da IDE, mas vale entender quais comandos estão por trás dessas operações: são eles que o Git executa a cada clique, e também são eles que o Claude Code executa ao trabalhar no seu repositório. Pense neles como o que acontece por baixo dos panos.
| Comando | O que faz |
|---|---|
git init | inicializa um novo repositório Git na pasta atual |
git clone | copia um repositório a partir de uma URL para uma nova pasta |
git status | mostra quais arquivos foram alterados, preparados e quais ainda não são rastreados pelo Git |
git add | adiciona arquivos ao índice (staging) para o próximo commit |
git commit | registra as alterações preparadas como um novo snapshot no histórico |
git push | envia commits do repositório local para o remoto |
git pull | obtém alterações e as integra à branch atual conforme as configurações |
git fetch | baixa alterações do servidor, mas ainda não as integra à sua branch |
git branch | mostra, cria ou exclui branches |
git checkout / git switch | switch troca de branch; checkout também consegue abrir um commit específico e restaura arquivos |
git merge | integra as alterações da branch indicada à branch atual |
git log | mostra o histórico de commits |
git diff | sem flags, compara os arquivos de trabalho com o índice; as alterações preparadas são consultadas separadamente |
git restore | restaura os arquivos selecionados; sem indicar a origem, os arquivos de trabalho vêm do índice, não necessariamente do último commit |
git reset | altera o índice ou a posição da branch atual; as consequências dependem da forma do comando e do modo |
git stash | guarda temporariamente alterações inacabadas para o(a) senhor(a) voltar a elas depois |
git remote -v | mostra a quais repositórios remotos o projeto está conectado |
git config | configurações do Git, como o nome e o email do autor dos commits |

Não precisa decorar a lista toda. No começo, basta entender que as ações da IDE e do agente se baseiam em operações do Git; um clique pode executar vários comandos. Por exemplo, o botão Commit usa git commit, e o botão Push usa git push.
- Arquivos de trabalho
- git add → índice
- git commit → histórico
- git push → servidor
O diagrama mostra o envio: o(a) senhor(a) prepara o conteúdo com add, registra localmente com commit e envia os commits com push. No sentido contrário, pull obtém os commits remotos e os integra à branch atual conforme as configurações.
É essa mecânica que o Claude Code executa pelo(a) senhor(a). Quando ele diz que vai criar um commit e enviar as alterações, por trás estão git add, git commit e git push. O(a) senhor(a) vê o resultado na mesma janela da IDE e pode conferir.
Quatro estados do código
Ao usar controle de versão, o código passa, conceitualmente, por quatro estados:
1. Diretório de trabalho (Working Directory). São os arquivos atuais do projeto no seu computador, que o(a) senhor(a) está editando agora.
2. Área de staging (Staging Area). O conteúdo preparado para o próximo commit. Nas IDEs da JetBrains, o(a) senhor(a) pode trabalhar com listas de alterações ou ativar um modo de staging separado. As caixas marcadas na janela comum de Commit selecionam o conteúdo do commit, mas não significam que ele já está no índice do Git.
3. Repositório local (Local Repository). Sua cópia pessoal do histórico do código no computador. Aqui o(a) senhor(a) pode criar commits, branches e merges mesmo sem internet.
4. Repositório remoto (Remote Repository). Um armazenamento central do código em serviços como GitHub, GitLab ou Bitbucket. Ele mantém o código em segurança e serve de base para o trabalho em equipe.
Quando o Claude Code pede para adicionar um arquivo novo ao rastreamento, ele move o arquivo do diretório de trabalho para o staging - é o comando git add. Assim, o conteúdo do arquivo é preparado como está naquele momento; se o(a) senhor(a) editar depois, precisa prepará-lo novamente. Se não for necessário adicionar o arquivo (por exemplo, se for lixo temporário), o(a) senhor(a) pode recusar.
Git e GitHub - qual é a diferença?
É importante distinguir bem esses dois conceitos. Git é um programa que roda localmente no seu computador (mesmo sem internet) e acompanha as versões dos arquivos. GitHub é um serviço na nuvem (um site) que armazena cópias remotas dos seus repositórios Git.
O GitHub permite criar repositórios, acompanhar mudanças e trabalhar no código junto com outras pessoas. Para quem trabalha com desenvolvimento hoje, ter um perfil no GitHub é uma parte importante do portfólio para mostrar a possíveis empregadores.
Como criar seu primeiro repositório no GitHub

Etapa 1. Acesse https://github.com e crie uma conta.
Etapa 2. Clique em New repository para criar um repositório.

Etapa 3. Defina as opções do repositório:
- nome do repositório - escolha um nome que faça sentido;
- Public ou Private - escolha a visibilidade com atenção. Public fica acessível a todos; Private restringe o acesso. Para um exercício pessoal que o(a) senhor(a) não pretende publicar, pode escolher Private.
- Add a README file - para um projeto novo e vazio, é prático adicionar um README. Se o(a) senhor(a) pretende enviar um histórico local que já existe, crie um repositório remoto vazio, sem README, para não acabar com dois históricos iniciais independentes.
- Add .gitignore - escolha um template para a tecnologia do seu projeto. A lista suspensa tem templates prontos para linguagens populares. Isso importa: o processo de build e os gerenciadores de pacotes criam muitos arquivos temporários e caches que não devem poluir o repositório, e o template ajuda o Git a ignorá-los;
- Choose a license - pode ser deixado de lado;
- clique em
Create repository.

Etapa 4. Pronto, seu primeiro repositório remoto foi criado.

Instalação e configuração do Git
A seguir, a interface mostrada é a do IntelliJ IDEA. Outras IDEs da JetBrains têm ações parecidas, mas a posição dos botões e os nomes dos itens variam conforme a versão. Procure pelo nome da ação; o(a) senhor(a) pode encontrá-la pela busca de ações da IDE.
Para trabalhar com Git, primeiro é preciso instalá-lo. Se o(a) senhor(a) usa uma IDE da JetBrains, ela provavelmente vai oferecer a instalação do Git se não o encontrar no sistema. O mais simples é aceitar.
Feche o projeto atual em File | Close Project. Na tela inicial (Welcome Screen), clique em Clone Repository (em algumas versões, o botão se chama Get from VCS).

Se preferir instalar o Git manualmente, baixe-o no site oficial: https://git-scm.com/downloads.
Um detalhe importante
No primeiro commit, o Git precisa do nome do autor e de um email. Isso identifica quem fez o commit, não serve para entrar na conta. Para vincular o commit ao GitHub, use um endereço confirmado nas configurações da conta ou o endereço noreply fornecido pelo GitHub, caso não queira publicar seu email pessoal.
O GitHub associa commits ao perfil pelo email. Ter o mesmo endereço não garante, por si só, que o commit apareça no gráfico de atividade: há outros requisitos.
O que instalar para o Claude Code trabalhar diretamente com Git e GitHub
Para commits e branches locais, basta ter o Git instalado: não é necessário entrar no GitHub. Para operações com o repositório remoto, configure o acesso a ele. GitHub CLI (gh) é uma ferramenta adicional para PRs e outros recursos do GitHub, não uma parte obrigatória do Git.
1. Git. Necessário para trabalhar com o histórico local. Instale pela IDE ou pelo site oficial do Git.
2. GitHub CLI (gh) é a ferramenta oficial de linha de comando do GitHub. Para que serve? Com ela, o Claude Code pode criar pull requests, ler issues e consultar o status das verificações diretamente no terminal, sem alternar para o navegador. O método de instalação depende do seu sistema operacional.
As instruções para o seu sistema estão na página oficial do GitHub CLI. Instale a ferramenta e confira se está disponível com o comando gh --version.
Se o(a) senhor(a) escolher o GitHub CLI, inicie a configuração de acesso e responda às perguntas. Para o GitHub.com, é possível escolher HTTPS e fazer login pelo navegador:
# entrar na conta do GitHub pelo terminal
gh auth loginO Claude Code pode usar git para o histórico e gh para os recursos do GitHub. Instalar o gh e executar gh auth login só é necessário se o(a) senhor(a) escolher esse jeito de trabalhar com o GitHub. A criação de PRs e o envio de commits são feitos conforme a sua tarefa, depois de conferir o que será enviado.
main vs master
Nos repositórios, aparecem branches chamadas main e master. O GitHub geralmente sugere main, enquanto o Git, ao inicializar um repositório local, considera a própria versão e a configuração init.defaultBranch. Confira o nome real da branch no projeto.
Os dois nomes indicam uma branch comum. Ao usar os comandos dos exemplos, ajuste-os aos nomes reais das branches do seu repositório.
Como isso funciona com o Claude Code
Agora que o(a) senhor(a) conhece os conceitos básicos do Git, fica mais fácil entender as ações do Claude Code. Veja o que ele faz com essa tecnologia pelo(a) senhor(a) e no que vale prestar atenção:
- executa
git add,git commit,git pushe outros comandos pelo(a) senhor(a) - os mesmos que estão por trás dos botões da IDE; - sugere adicionar um arquivo ao rastreamento (
git add) - o(a) senhor(a) decide se esse arquivo deve ou não entrar no histórico; - sugere um commit com uma mensagem pronta - o(a) senhor(a) lê o que ele vai registrar e aceita ou edita;
- com o GitHub CLI, consegue criar e comentar pull requests (PR - uma proposta para integrar uma branch à principal) e consultar o status das verificações.
Antes de aceitar, confira quais arquivos e alterações entrarão no commit. O Claude Code mostra tudo como a IDE, em um diff. Esse é o seu ponto de controle: o(a) senhor(a) sempre entende exatamente o que vai para o histórico do projeto e para o servidor.
GO TO FULL VERSION