Comandos Git: Conheça os mais usados
O Git é uma das ferramentas mais poderosas e amplamente utilizadas para controle de versão no desenvolvimento de software. Ele permite que equipes colaborem, gerenciem alterações em projetos e mantenham um histórico claro de desenvolvimento. Este artigo explora os comandos básicos, comandos de branch e merge, comandos para repositórios remotos, e comandos avançados do Git, fornecendo uma visão completa para desenvolvedores de todos os níveis.
Comandos Básicos do Git
Os comandos básicos são o alicerce para qualquer uso do Git. Eles ajudam você a inicializar repositórios, rastrear alterações e criar pontos de controle.
1. Configuração Inicial
Antes de começar a usar o Git, configure suas credenciais:
git config --global user.name "Seu Nome"
git config --global user.email "seuemail@example.com"
2. Inicializar um Repositório
Crie um novo repositório Git em um diretório:
git init
3. Adicionar Arquivos ao Controle de Versão
Rastreie arquivos ou adicione alterações ao staging:
git add <nome_do_arquivo>
git add . # Adiciona todos os arquivos no diretório atual
4. Confirmar Alterações
Salve as alterações no histórico do Git:
git commit -m "Mensagem descritiva do commit"
5. Verificar o Status
Veja o estado atual do repositório:
git status
6. Ver Histórico de Commits
Liste os commits anteriores:
git log
7. Reverter Arquivos
Reverta alterações feitas antes de confirmá-las:
git checkout -- <nome_do_arquivo>
Comandos de Branch e Merge do Git
O Git permite criar e gerenciar branches (ramificações) para trabalhar em funcionalidades isoladas.
1. Criar uma Nova Branch
Crie uma branch para desenvolver uma nova funcionalidade:
git branch <nome_da_branch>
2. Trocar de Branch
Mude para outra branch:
git checkout <nome_da_branch>
3. Criar e Trocar de Branch
Combine os dois comandos anteriores:
git checkout -b <nome_da_branch>
4. Listar Branches
Liste todas as branches disponíveis:
git branch
5. Excluir uma Branch
Apague uma branch que não é mais necessária:
git branch -d <nome_da_branch>
6. Fazer Merge de Branches
Combine alterações de uma branch na branch atual:
git merge <nome_da_branch>
7. Resolver Conflitos de Merge
Se ocorrerem conflitos durante o merge, edite os arquivos para resolver os conflitos, adicione-os novamente ao staging e confirme as alterações:
git add <arquivo>
git commit -m "Conflitos resolvidos"
Comandos de Repositório Remoto Git
Repositórios remotos permitem que você trabalhe em colaboração com outros desenvolvedores.
1. Clonar um Repositório
Crie uma cópia local de um repositório remoto:
git clone <url_do_repositorio>
2. Adicionar um Repositório Remoto
Associe um repositório remoto a um local:
git remote add origin <url_do_repositorio>
3. Listar Repositórios Remotos
Veja os repositórios remotos associados:
git remote -v
4. Enviar Alterações para o Repositório Remoto
Faça upload de commits locais para o repositório remoto:
git push origin <nome_da_branch>
5. Buscar Alterações do Repositório Remoto
Atualize sua cópia local com mudanças do repositório remoto:
git fetch
6. Mesclar Alterações do Remoto ao Local
Integre alterações buscadas em sua branch atual:
git pull
7. Remover um Repositório Remoto
Desassocie um repositório remoto:
git remote remove <nome>
Comandos Avançados do Git
Para usuários mais experientes, o Git oferece comandos avançados para reescrever histórico, interagir com commits e otimizar o trabalho em equipe.
1. Rebasing
Reescreva o histórico de commits para criar uma linha do tempo linear:
git rebase <nome_da_branch>
2. Cherry-pick
Aplique um commit específico de outra branch:
git cherry-pick <hash_do_commit>
3. Stashing
Salve alterações temporariamente sem confirmá-las:
git stash
Recupere as alterações armazenadas:
git stash apply
4. Reverter um Commit
Desfaça um commit específico:
git revert <hash_do_commit>
5. Reset
Desfaça alterações e remova commits do histórico:
git reset --soft <hash_do_commit> # Mantém mudanças no staging
git reset --hard <hash_do_commit> # Remove tudo, inclusive as mudanças locais
6. Mostrar Diferenças
Veja as alterações entre commits ou no estado atual:
git diff
git diff <hash1> <hash2>
7. Tags
Crie tags para marcar versões:
git tag <nome_da_tag>
git push origin <nome_da_tag>
Conclusão
O Git é uma ferramenta indispensável para o controle de versão, permitindo gerenciar projetos de forma eficiente e colaborativa. Desde os comandos básicos, como git init
e git commit
, até recursos avançados como git rebase
e git stash
, há sempre algo novo para aprender.
Com os comandos de branch e merge, você pode trabalhar em funcionalidades separadas sem interferir no código principal. Já os comandos de repositórios remotos possibilitam colaboração em equipe, enquanto os comandos avançados ajudam a lidar com situações mais complexas.
Com prática e conhecimento, você pode dominar o Git e utilizá-lo para otimizar seu fluxo de trabalho, seja em projetos pessoais ou em equipes grandes.