[GIT] Resumo de comandos

Segue um guia rápido dos comandos mais utilizados ao utilizar o GIT como ferramenta de versionamento.

Operação Comando
Iniciar um repositório GIT em um diretório cd [path_diretorio]
git init
Clonar um repositório git clone usuario@servidor:/caminho/para/o/repositório
Configurando informações sobre o autor dos commits git config –global user.name “usuario”
git config –global user.email “usuario@email.com”
Definição de cores para o modo console git config –global color.branch auto
git config –global color.diff auto
git config –global color.status auto
git config –global color.interactive auto
Definir editor de texto padrão para o diretório de trabalho git config –global core.editor “vim”
Criar um branch git branch [nome_branch]
Excluir um branch git branch -d [nome_branch]
Alterar para um branch git checkout [nome_branch]
Criar e alterar um branch (ao mesmo tempo) git checkout -b nome_branch
Adicionando arquivos novos git add [nome_do_arquivo]
Persistir as mudanças (Commit) git commit -m “mensagem”
Enviando a modificação git push origin [nome_branch]
Baixando as modificações do branch master git checkout master

git pull origin master

Atualizando o branch do usuário de acordo com o branch master git checkout [nome_branch]

git fetch master

git merge master

Listar os branches git branch
Listar os branches remotos git branch -r
Salvar as modificações git stash
Retornando as modificações salvas com stash git stash pop
Apagando as modificações salvas com stash git stash clear
Criar uma tag (versão de lançamento) git tag v1.0
git push origin v1.0
Listar todas as tags de um repositório git tag -ln
Criar uma tag a partir de um commit específico git tag [nome_da_tag] [id_do_commit]
Ex: git tag v0.01 4b8ef995de6d77
Deletar uma tag git tag -d [nome_tag]
git push origin :refs/tags/[nome_tag]
Renomear uma tag git tag [novo_nome] [nome_antigo]
git push origin [novo_nome]
git push origin :refs/tags/[nome_antigo]
git tag -d [nome_antigo]
Adicionando o repositório remoto via SSH git remote add [nome_repo] usuario@servidor:/caminho/para/o/repositório
Adicionando o repositório remoto via HTTP git remote add [nome_repo] usuario@servidor:/caminho/para/o/repositório
Atualizando o master com as modificações do repositório remoto git checkout master

git fetch nome_repo

git merge nome_repo/master

Listar os repositórios remotos git remote -v
Deletar um repositório remoto git remote rm [nome_remoto]
Renomear um repositório remoto git remote rename [nome_remoto_atual] [novo_nome_remoto]
Alterando a URL de um repositório remoto git remote set-url [nome_remoto] [url]
Obter (fetch) as atualizações do repositório remoto git fetch [nome_remoto]
Juntar as modificações obtidas pelo fetch em uma branch local git merge [nome_remoto]/[nome_branch]
Voltando ao commit anterior descartando totalmente o commit atual (cuidado: não há como desfazer este procedimento) git reset –hard HEAD^

Visualizando logs

  • git log
  • git log –stat (Mostra o que foi modificado em cada commit)
  • git log –graph (Mostra gráfico do log)
  • git log –pretty=oneline (Mostra os commits linha por linha)
  • git log –pretty=format:“%an %ad %h %s” (Exibe o autor, data, sha1 abreviado e texto do commit)
  • git log –since=30.minutes ou 1.hour ou 2.hours (Exibe commits dos últimos 30 minutos, 1h ou 2h)
  • git log –since=10.hours –until=2.hours (Exibe commits entre as últimas 10h e últimas 2h)
  • git log –before=“2010-12-25” (Exibe commits antes do dia 25/12/2010)
  • git reflog (Mostra commits apagados pelo git reset)