Guia Prático de Comandos Git
Principais Comandos Git: Um Guia Prático para Iniciantes e Além O Git é um sistema de controle de versão distribuído poderoso e essencial para qualquer desenvolvedor moderno. Compreender seus comandos básicos pode transformar a forma como você gerencia seus projetos, colabora com equipes e rastreia mudanças no seu código. Este guia apresenta os comandos Git mais utilizados, com exemplos práticos para facilitar o seu aprendizado.

Iniciando com Git

1. git init

O comando git init inicializa um novo repositório Git em um diretório existente. Isso cria uma pasta .git oculta, que armazena todo o histórico e metadados do seu repositório.
git init
Como usar: Navegue até o diretório do seu projeto pelo terminal e execute git init.

2. git clone

O comando git clone cria uma cópia local de um repositório Git remoto (por exemplo, do GitHub, GitLab ou Bitbucket).
git clone <URL_DO_REPOSITORIO>
Exemplo:
git clone https://github.com/usuario/meu-projeto.git
Como usar: Substitua <URL_DO_REPOSITORIO> pela URL do repositório que você deseja clonar.

Trabalhando com Modificações

3. git status

O comando git status exibe o estado do seu diretório de trabalho, informando quais arquivos foram modificados, adicionados ao staging area (preparados para commit) ou ainda não rastreados pelo Git.
git status
Como usar: Execute git status no terminal dentro do diretório do seu repositório para ver as mudanças.

4. git add

O comando git add adiciona arquivos modificados ou novos ao staging area, preparando-os para serem incluídos no próximo commit.
git add <nome_do_arquivo>
Para adicionar todos os arquivos modificados:
git add .
Como usar: Para adicionar um arquivo específico, substitua <nome_do_arquivo> pelo nome do arquivo. git add . adiciona todas as mudanças no diretório.

5. git commit

O comando git commit registra as mudanças do staging area no histórico do repositório. É fundamental adicionar uma mensagem descritiva ao commit para facilitar o rastreamento das alterações.
git commit -m "Mensagem descritiva do commit"
Como usar: Substitua "Mensagem descritiva do commit" por uma descrição clara das suas mudanças. Ex: git commit -m "Adiciona funcionalidade de login"

6. git rm

O comando git rm remove arquivos do diretório de trabalho e do staging area. Para remover um arquivo apenas do staging area (sem removê-lo do diretório de trabalho), use git rm --cached <nome_do_arquivo>.
git rm <nome_do_arquivo>
Como usar: Para remover o arquivo fisicamente do projeto, use git rm <nome_do_arquivo>. Para removê-lo apenas do controle do Git, use git rm --cached <nome_do_arquivo>.

Gerenciando Branchs

7. git branch

O comando git branch lista as branches existentes no seu repositório. Para criar uma nova branch:
git branch <nome_da_branch>
Como usar: Para listar as branches, execute git branch. Para criar uma nova branch, substitua <nome_da_branch> pelo nome desejado. Ex: git branch feature/nova-funcionalidade

8. git checkout

O comando git checkout permite alternar entre branches. Para criar e mudar para uma nova branch simultaneamente, use a opção -b:
git checkout <nome_da_branch>
git checkout -b <nova_branch>
Como usar: Para alternar para uma branch existente, use git checkout <nome_da_branch>. Para criar e ir para uma nova branch, use git checkout -b <nova_branch>.

9. git merge

O comando git merge combina as mudanças de uma branch em outra (geralmente da branch de desenvolvimento para a branch principal - main ou master). Certifique-se de estar na branch que receberá as alterações antes de executar o merge.
git merge <nome_da_branch_a_ser_mergeada>
Como usar: Primeiro, faça checkout para a branch que receberá as mudanças (ex: git checkout main). Depois, execute git merge <nome_da_branch_a_ser_mergeada>.

10. git branch -d

O comando git branch -d exclui uma branch localmente. Se a branch não tiver sido mergeada, use git branch -D para forçar a exclusão.
git branch -d <nome_da_branch>
Como usar: Após o merge bem-sucedido, use git branch -d <nome_da_branch> para excluir a branch. Se houver erros de merge ou a branch não foi mergeada, use git branch -D <nome_da_branch> (com cuidado!).

Colaborando com Remotos

11. git remote

O comando git remote gerencia as conexões com repositórios remotos. Para adicionar um novo remoto:
git remote add origin <URL_DO_REPOSITORIO_REMOTO>
Para listar os remotos configurados:
git remote -v
Como usar: Para adicionar um repositório remoto, substitua <URL_DO_REPOSITORIO_REMOTO> pela URL do repositório remoto. origin é um nome comum para o repositório remoto principal. Use git remote -v para verificar os remotos configurados.

12. git push

O comando git push envia as suas mudanças locais para um repositório remoto.
git push origin <nome_da_branch>
Para configurar o rastreamento da branch remota (necessário na primeira vez):
git push -u origin <nome_da_branch>
Como usar: Envie suas mudanças para o repositório remoto usando git push origin <nome_da_branch>. Use git push -u origin <nome_da_branch> na primeira vez que enviar uma branch nova para o remoto, para configurar o rastreamento.

13. git pull

O comando git pull busca as últimas mudanças do repositório remoto e as mescla com a sua branch local.
git pull origin <nome_da_branch>
Como usar: Para atualizar sua branch local com as últimas mudanças do remoto, use git pull origin <nome_da_branch>.

14. git fetch

O comando git fetch busca as últimas mudanças do repositório remoto, mas não as mescla automaticamente. Isso permite que você revise as mudanças antes de integrá-las à sua branch local.
git fetch origin
Como usar: Para buscar as mudanças sem mesclar automaticamente, use git fetch origin. Depois, você pode usar git diff para comparar as mudanças e git merge para integrá-las.

Desfazendo Mudanças

15. git revert

O comando git revert cria um novo commit que desfaz as mudanças introduzidas por um commit específico. É uma maneira segura de desfazer alterações em branches compartilhadas, pois não altera o histórico existente.
git revert <hash_do_commit>
Como usar: Substitua <hash_do_commit> pelo hash do commit que você deseja desfazer. O Git criará um novo commit revertendo as mudanças.

16. git reset

O comando git reset permite mover o ponteiro da branch atual para um commit anterior. Existem três tipos principais de reset:
  • git reset --soft <hash_do_commit>: Mantém as mudanças como arquivos modificados no staging area.
  • git reset --mixed <hash_do_commit>: Desfaz o commit, mas mantém as mudanças como arquivos modificados no diretório de trabalho. (Este é o comportamento padrão se nenhum tipo for especificado).
  • git reset --hard <hash_do_commit>: Desfaz o commit e remove as mudanças do diretório de trabalho. Use com extrema cautela, pois as alterações são perdidas permanentemente!
git reset --soft <hash_do_commit>
Como usar: Substitua <hash_do_commit> pelo hash do commit para o qual você deseja voltar. Escolha o tipo de reset com cuidado. --hard é destrutivo.

Visualizando o Histórico

17. git log

O comando git log exibe o histórico de commits do repositório. Existem várias opções para personalizar a saída, como:
  • git log --oneline: Exibe cada commit em uma única linha.
  • git log --graph: Exibe o histórico como um grafo das branches.
  • git log --author="Nome do Autor": Exibe apenas os commits feitos por um autor específico.
git log
git log --oneline
Como usar: Execute git log para ver o histórico completo. Experimente as opções --oneline, --graph e --author para personalizar a saída.

18. git diff

O comando git diff mostra as diferenças entre commits, arquivos ou o staging area e o diretório de trabalho.
git diff
git diff <nome_do_arquivo>
git diff <hash_do_commit_1> <hash_do_commit_2>
Como usar: Use git diff para ver as mudanças no diretório de trabalho. Use git diff <nome_do_arquivo> para ver as mudanças em um arquivo específico. Use git diff <hash_do_commit_1> <hash_do_commit_2> para comparar dois commits.

Conclusão

Dominar esses comandos Git essenciais é fundamental para um fluxo de trabalho eficiente e colaborativo no desenvolvimento de software. Explore a documentação oficial do Git e pratique esses comandos regularmente para aprimorar suas habilidades e aproveitar ao máximo o poder do controle de versão. Compartilhe este guia com seus colegas e continue aprendendo! ```

Sem comentários