Comandos GIT

vitor_melo212

Vitor Melo

Posted on October 13, 2024

Comandos GIT

Estados no Git

  • Modificado (modified): Arquivos foram modificados, mas ainda não estão preparados para commit.
  • Preparado (staged/index): Arquivos estão prontos para serem comitados.
  • Consolidado (committed): Alterações foram salvas no repositório local.

Ajuda no Git

  • Ajuda Geral:
    • git help
  • Ajuda para um comando específico:
    • git help <comando>
    • Ex.: git help add, git help commit

Configurações do Git

Geral

As configurações do Git são armazenadas no arquivo .gitconfig, que pode estar no diretório do usuário no Sistema Operacional (Ex.: Windows: C:\Users\<nome_usuario>\ ou Unix-like: /home/<nome_usuario>/).

Configurações comuns

  • Setar nome de usuário:
    • git config --global user.name "Nome do Usuário"
  • Setar email:
    • git config --global user.email "email@dominio.com"
  • Setar editor padrão:
    • git config --global core.editor vim
  • Setar ferramenta de merge:
    • git config --global merge.tool vimdiff
  • Setar arquivo global de exclusões:
    • git config --global core.excludesfile ~/.gitignore
  • Listar configurações:
    • git config --list

Ignorar Arquivos com .gitignore

Arquivos e diretórios especificados no .gitignore serão ignorados pelo Git.

  • Global: Localizado no diretório do usuário e aplica-se a todos os repositórios.
  • Por Repositório: Armazenado no diretório do repositório e aplicável apenas a esse repositório específico.

Repositório Local

Criar novo repositório

  • git init

Verificar o estado dos arquivos/diretórios

  • git status

Adicionar arquivos à área de stage

  • Arquivo específico: git add <arquivo>
  • Diretório específico: git add <diretório>
  • Todos os arquivos: git add .
  • Adicionar arquivo ignorado: git add -f <arquivo>

Comitar alterações

  • Comitar um arquivo: git commit <arquivo>
  • Comitar vários arquivos: git commit <arquivo1> <arquivo2>
  • Comitar com mensagem: git commit -m "mensagem do commit"

Remover arquivos/diretórios

  • Remover arquivo: git rm <arquivo>
  • Remover diretório: git rm -r <diretório>

Histórico de commits

  • Exibir histórico completo: git log
  • Histórico com diff das últimas duas alterações: git log -p -2
  • Resumo do histórico: git log --stat
  • Histórico em uma linha: git log --pretty=oneline
  • Histórico com formatação personalizada:
    • git log --pretty=format:"%h - %an, %ar : %s"
    • Onde: %h = Hash abreviada, %an = Nome do autor, %ar = Data relativa, %s = Mensagem de commit

Desfazendo alterações

  • Desfazer alteração local (sem stage): git checkout -- <arquivo>
  • Desfazer alteração no stage: git reset HEAD <arquivo>

Repositório Remoto

Exibir repositórios remotos

  • git remote -v

Vincular repositório local a remoto

  • git remote add origin <url-repositório>

Enviar alterações para o repositório remoto

  • Primeiro push: git push -u origin master
  • Demais pushes: git push

Atualizar o repositório local

  • Baixar e aplicar alterações: git pull
  • Buscar alterações sem aplicá-las: git fetch

Clonar repositório remoto

  • git clone <url-repositório>

Trabalhando com Tags

  • Criar tag leve: git tag <nome-da-tag>
  • Criar tag anotada: git tag -a <nome-da-tag> -m "mensagem da tag"
  • Enviar tag para repositório remoto: git push origin <tag>

Trabalhando com Branches

  • Criar um novo branch: git branch <nome-do-branch>
  • Trocar de branch: git checkout <nome-do-branch>
  • Criar e trocar para um novo branch: git checkout -b <nome-do-branch>
  • Mesclar branches: git merge <nome-do-branch>

Rebasing

  • git rebase <branch-destino>

Stash (Mudanças temporárias)

  • Criar um stash: git stash
  • Listar stashes: git stash list
  • Aplicar o stash: git stash apply

Reescrevendo o histórico

  • Alterar a mensagem do último commit: git commit --amend -m "nova mensagem"

Bisect (Encontrar commits com bugs)

  • Iniciar bisect: git bisect start
  • Marcar commit atual como ruim: git bisect bad
  • Marcar commit como bom: git bisect good

Pull Requests

  • Criar pull request: git push origin <branch>

Contribuições

Sinta-se à vontade para adicionar mais informações ou realizar correções.

💖 💪 🙅 🚩
vitor_melo212
Vitor Melo

Posted on October 13, 2024

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related

Comandos GIT
tutorial Comandos GIT

October 13, 2024

Cleaning up merged git branches
tutorial Cleaning up merged git branches

December 19, 2020