Lista de Comandos Git

1. Inicializar um Repositório

`git init` - Inicializa um novo repositório Git no diretório atual. Usado quando você começa um novo projeto.

Exemplo: `git init`

2. Clonar um Repositório Existente

`git clone <url-do-repositorio>` - Clona um repositório remoto para sua máquina local.

Exemplo: `git clone https://github.com/usuario/repo.git`

3. Verificar o Status do Repositório

`git status` - Mostra o estado atual do repositório, incluindo arquivos modificados, arquivos não rastreados e arquivos prontos para commit.

Exemplo: `git status`

4. Adicionar Arquivos ao Stage (Área de Preparação)

`git add <arquivo>` - Adiciona um arquivo específico para a área de preparação (stage), ou seja, para ser incluído no próximo commit.

Exemplo: `git add arquivo.txt`

`git add .` - Adiciona todos os arquivos modificados e novos ao stage.

Exemplo: `git add .`

5. Realizar um Commit

`git commit -m "Mensagem do commit"` - Cria um snapshot do estado atual do repositório e registra as mudanças com uma mensagem explicativa.

Exemplo: `git commit -m "Adicionando a funcionalidade X"`

`git commit -a` - Comita automaticamente todos os arquivos rastreados que foram modificados (não adiciona novos arquivos).

Exemplo: `git commit -a -m "Atualizando arquivos modificados"`

6. Verificar o Histórico de Commits

`git log` - Exibe o histórico de commits do repositório, mostrando os commits anteriores, suas mensagens e detalhes.

Exemplo: `git log`

`git log --oneline` - Exibe o histórico de commits de forma mais compacta, mostrando apenas o hash curto e a mensagem.

Exemplo: `git log --oneline`

7. Atualizar o Repositório Local com o Repositório Remoto

`git pull` - Baixa e integra as mudanças feitas no repositório remoto para o seu repositório local.

Exemplo: `git pull origin main`

8. Enviar Alterações para o Repositório Remoto

`git push` - Envia seus commits locais para o repositório remoto.

Exemplo: `git push origin main`

9. Criar e Mudar de Branch

`git branch` - Lista todas as branches no repositório ou cria uma nova branch.

Exemplo: `git branch`

`git branch <nome-da-branch>` - Cria uma nova branch.

Exemplo: `git branch feature-x`

`git checkout <nome-da-branch>` - Muda para a branch especificada.

Exemplo: `git checkout feature-x`

`git checkout -b <nome-da-branch>` - Cria e já muda para uma nova branch.

Exemplo: `git checkout -b feature-y`

10. Mesclar Branches (Merge)

`git merge <nome-da-branch>` - Mescla a branch especificada com a branch atual (geralmente após finalizar uma feature).

Exemplo: `git merge feature-x`

11. Resolver Conflitos de Merge

`git status` - Use após um conflito de merge para verificar os arquivos com conflitos.

Exemplo: `git status`

Edite os arquivos conflitantes manualmente.

`git add <arquivo>` - Adicione os arquivos resolvidos ao stage após o conflito ser resolvido.

Exemplo: `git add arquivo-conflito.txt`

`git commit` - Comite a resolução do conflito.

Exemplo: `git commit`

12. Visualizar Diferenças entre Commits

`git diff` - Mostra as diferenças entre os arquivos modificados e a última versão comitada.

Exemplo: `git diff`

`git diff --staged` - Mostra as diferenças entre o que foi adicionado ao stage e o último commit.

Exemplo: `git diff --staged`

13. Reverter um Commit ou Arquivo

`git reset <commit>` - Reverte o repositório para o estado de um commit anterior.

Exemplo: `git reset --hard HEAD~1`

`git checkout -- <arquivo>` - Desfaz mudanças locais em um arquivo.

Exemplo: `git checkout -- arquivo.txt`