Integração Git
O Claude Code controla o git a partir do teu terminal. Diz o que precisas em inglês simples e o commit, branch ou PR fica pronto com as convenções da tua equipa já incluídas.
Pare de configurar. Comece a construir.
Templates SaaS com orquestração de IA.
Problema: Terminaste um conjunto de edições com o Claude Code e agora o diff está ali, sem stage, e precisas que o histórico fique limpo.
Ganho Rápido: Assim que o Claude termina o trabalho, pede um commit em inglês simples:
claude "commit these changes"O diff é lido, uma mensagem de commit real é escrita, e git commit corre em teu nome. Nenhuma configuração falsa, nenhum plugin, nada para instalar.
Os comandos git correm diretamente pelo teu terminal quando o Claude Code está aberto. Não há modo "auto-commit" para ativar e nada para ligar. Pedes, acontece.
Aqui está o que o Claude trata:
- Correr qualquer comando git: add, commit, push, pull, branch, merge
- Escrever mensagens de commit: Com base nas mudanças reais que fez
- Criar branches: Para funcionalidades ou experiências
- Criar PRs: Usando o CLI
ghse estiver instalado - Resolver conflitos: Lendo ambas as versões e fazendo merge de forma inteligente
Como o Claude consegue ver o histórico git e seguir o fio do teu trabalho, as mensagens de commit descrevem o que realmente mudou e porquê.
Define Convenções no CLAUDE.md
Esquece os comandos de configuração falsos. Coloca as regras de commit da tua equipa no CLAUDE.md:
## Git Conventions
- Use conventional commits: feat:, fix:, docs:, refactor:
- Keep subject lines under 72 characters
- Always run tests before committing
- Create feature branches for new workPede um commit a partir daí e o Claude alinha-se com o que escreveste.
Workflows Git Reais
Commit Simples Após Mudanças
# Claude acabou de implementar uma funcionalidade
claude "commit these changes"
# Ou sê mais específico
claude "commit with message: add user authentication flow"Workflow de Feature Branch
# Começa novo trabalho num branch
claude "create a feature branch called auth-improvements and switch to it"
# Faz mudanças, depois faz commit
claude "commit the auth changes with a descriptive message"
# Quando estiver pronto, cria um PR
claude "push this branch and create a PR with a summary of changes"Rever Antes de Fazer Commit
# Vê o que mudou primeiro
claude "show me a summary of all uncommitted changes"
# Depois faz commit seletivamente
claude "commit only the changes in src/auth/ with message: refactor auth module"Atribuição de Commits
Os commits e PRs do Claude têm atribuição por padrão, para que a tua equipa (e tu no futuro) possa perceber qual trabalho foi assistido por IA. O que aparece na mensagem é controlado pela chave attribution dentro do settings.json.
Atribuição Padrão
Os commits recebem duas linhas adicionadas:
Generated with Claude Code (https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply>A primeira linha é texto simples. A segunda é um git trailer, um formato que o GitHub (e outros hosts) interpreta para mostrar o Claude como co-autor no commit.
Para pull requests, a atribuição aparece como um blurb mais curto na descrição:
Generated with Claude Code (https://claude.com/claude-code)Personalizar a Atribuição
A atribuição de commits e PRs têm cada uma a sua própria chave no settings.json:
{
"attribution": {
"commit": "Generated with AI\n\nCo-Authored-By: AI Assistant <your-ai-alias>",
"pr": "AI-assisted PR"
}
}Reescreve o texto do corpo, o nome e email do Co-Authored-By, ou todas as partes de uma vez. O \n\n é o que separa a mensagem do bloco de trailer, e o formato de git trailers requer isso.
Desativar a Atribuição
String vazia em qualquer chave desativa a linha:
{
"attribution": {
"commit": "",
"pr": ""
}
}Isso oculta a atribuição em commits, PRs, ou ambos. Útil para equipas que registam o uso de IA noutro lugar.
Migração do includeCoAuthoredBy
O includeCoAuthoredBy booleano mais antigo está a ser descontinuado. Se tinhas "includeCoAuthoredBy": false, migra para attribution:
// Antigo (descontinuado)
{ "includeCoAuthoredBy": false }
// Novo (recomendado)
{
"attribution": {
"commit": "",
"pr": ""
}
}O controlo mais fino vem da nova configuração. A atribuição de commits pode ser desativada enquanto a de PRs fica ativa, ou vice-versa. Coloca o bloco no âmbito que queres que cubra, seja utilizador, projeto ou local.
Quando as Coisas Correm Mal
Erro: "nothing to commit". Solução: ou o Claude já executou o commit, ou os ficheiros nunca chegaram ao índice. Pede ao Claude para verificar:
claude "what's the current git status?"Erro: "permission denied" no push. Solução: o remote quer autenticação. As credenciais não são algo que o Claude possa fornecer por ti, mas pode ajudar-te com o diagnóstico:
claude "help me debug this git push error"Erro: Conflitos de merge. Solução: o Claude pode resolvê-los:
claude "there are merge conflicts in auth.js - resolve them keeping our new changes"Próximos Passos
- Feedback loops para iteração mais rápida
- Todo workflows para acompanhar o trabalho
- Modos de planeamento para mudanças complexas
- Referência de configurações para atribuição e outras opções
- Otimização de uso para gerir custos
O git dentro do Claude Code não tem etapa de configuração. Diz ao Claude qual movimento git precisas, e os comandos correm. É esse o truque todo.
Pare de configurar. Comece a construir.
Templates SaaS com orquestração de IA.