- Configurar nome de usuário e email:
git config --global user.name "Seu Nome" git config --global user.email "seu.email@example.com"
-
Criar um novo repositório:
git init
-
Clonar um repositório existente:
git clone <url-do-repositorio>
-
Verificar o status dos arquivos:
git status
-
Adicionar arquivos para a área de stage:
git add <nome-do-arquivo> git add .
-
Fazer commit das alterações:
git commit -m "Mensagem descritiva do commit"
-
Visualizar o histórico de commits:
git log
-
Criar uma nova branch:
git branch <nome-da-branch>
-
Mudar para outra branch:
git checkout <nome-da-branch>
-
Criar e mudar para uma nova branch:
git checkout -b <nome-da-branch>
-
Mesclar uma branch com a branch atual:
git merge <nome-da-branch>
-
Remover uma branch local:
git branch -d <nome-da-branch>
-
Verificar repositórios remotos:
git remote -v
-
Adicionar um repositório remoto:
git remote add origin <url-do-repositorio>
-
Enviar commits para o repositório remoto:
git push origin <nome-da-branch>
-
Atualizar o repositório local com mudanças do remoto:
git pull origin <nome-da-branch>
-
Reverter mudanças locais:
git checkout -- <nome-do-arquivo>
-
Desfazer um commit específico (mantendo mudanças):
git reset --soft <id-do-commit>
-
Desfazer um commit específico (descartando mudanças):
git reset --hard <id-do-commit>
-
Restaurar para o último commit:
git restore . git checkout -- .
-
Criar uma tag:
git tag <nome>
-
Enviar uma tag para o repositório remoto:
git push origin <nome-da-tag>
-
Remover uma tag:
git tag -d <nome> git push origin --delete <nome-da-tag>
-
Criar uma tag anotada com mensagem:
git tag -a <nome> -m "Mensagem da tag"
- Reaproveitar commits de uma branch em outra:
git cherry-pick <hash-do-commit>
- Achar o autor de uma linha específica (use com cuidado):
git blame <arquivo>
Submódulos permitem incluir um repositório Git dentro de outro como um subdiretório. Isso é útil quando você deseja usar um projeto externo dentro do seu projeto, mantendo a habilidade de atualizá-lo separadamente.
-
Adicionar um submódulo:
git submodule add <url-do-repositorio> <caminho-opcional>
-
Inicializar submódulos em um repositório clonado:
git submodule update --init --recursive
-
Atualizar submódulos para o commit mais recente:
git submodule update --remote
-
Remover um submódulo:
git rm --cached <caminho-do-submodulo> rm -rf <caminho-do-submodulo>
-
Alterar a URL de um submódulo:
git config --file=.gitmodules submodule.<submodulo>.url <nova-url> git submodule sync <submodulo> git submodule update --init --recursive
-
Navegue até o diretório do submódulo:
cd <caminho-do-submodulo>
-
Verifique o histórico do submódulo:
git log --oneline
-
Resetar o submódulo para o commit correto:
git checkout <hash-do-commit>
-
Volte ao diretório raiz do projeto:
cd ..
-
Atualize o índice do repositório principal:
git add <caminho-do-submodulo>
-
Commitar a alteração:
git commit -m "Atualiza submódulo para o commit correto"
-
Push para o repositório remoto:
git push origin <nome-da-branch>
-
Visualizar commits de forma resumida:
git log --oneline
-
Exibir mudanças detalhadas entre commits:
git log -p
-
Visualizar o histórico de commits como um gráfico:
git log --graph
-
Customizar o formato de saída do log:
git log --format="%H %an"
-
Verificar diferenças entre commits específicos:
git diff <commit-antigo>..<commit-novo>