git init #Inicia um novo repositorio git
git clone #Copia um repositorio git
git status #Informa o estado atual do repositorio
git add #Adiciona um arquivo ao repositorio
git add . #Adiciona todos os arquivos ao repositorio
git commit -m "Mensagem" #Cria um commit com uma mensagem
git push #Envia os commits para o repositorio remoto
git pull #Baixa as alterações do repositorio remoto
git fetch #Baixa as alterações do repositorio remoto
git branch #Lista as branchs do repositorio
git checkout "Nome da branch" #Muda para a branch informada
git merge "Nome da branch" #Faz o a mesclagem da branch informada com a branch atual
git config --global user.name "Nome" #Configura o nome do usuario globalmente
git config --global user.email "Email" #Configura o email do usuario globalmente
git config user.name "Nome" #Configura o nome do usuario localmente
git config user.email "Email" #Configura o email do usuario localmente
git config --global core.editor "Nome do editor" #Configura o editor de texto globalmente
git config core.editor "Nome do editor" #Configura o editor de texto localmente
git config --global alias."Nome do alias" "Comando" #Cria um alias globalmente
git log #Mostra o historico de commits
git log --decorate #Mostra o historico de commits com informações adicionais
git log --author="Nome do autor" #Mostra o historico de commits de um autor especifico
git shortlog #Mostra o historico de commits de forma resumida
git shortlog -sn #Mostra o historico de commits de forma resumida e ordenada por quantidade de commits
git log --graph #Mostra o historico de commits de forma grafica
git show "Hash do commit" #Mostra as alterações do commit informado
git diff #Mostra as alterações feitas nos arquivos
git diff --name-only #Mostra apenas os nomes dos arquivos alterados
git diff "Hash do commit" #Mostra as alterações feitas no commit informado
git diff "Hash do commit" "Hash do commit" #Mostra as alterações feitas entre os commits informados
git diff "Hash do commit" "Hash do commit" --name-only #Mostra apenas os nomes dos arquivos alterados entre os commits informados
git checkout "Nome do arquivo" #Desfaz as alterações feitas no arquivo informado
git reset HEAD "Nome do arquivo" #Retira o arquivo informado da staged area
git reset --soft "Hash do commit" #Retorna o repositorio ao estado do commit informado
git reset --mixed "Hash do commit" #Retorna o repositorio ao estado do commit informado e retira os arquivos da staged area
git reset --hard "Hash do commit" #Retorna o repositorio ao estado do commit informado e retira os arquivos da staged area e do working directory
git tag #Lista as tags
git tag -a "Nome da tag" -m "Mensagem" #Cria uma tag anotada
git tag -d "Nome da tag" #Deleta a tag informada
git push origin "Nome da tag" #Envia a tag informada para o repositorio remoto
git push origin --tags #Envia todas as tags para o repositorio remoto
git checkout "Nome da tag" #Muda para a tag informada
git branch "Nome da branch" #Cria uma nova branch
git branch -D "Nome da branch" #Deleta a branch informada
git checkout -b "Nome da branch" #Cria uma nova branch e muda para ela
git merge "Nome da branch" #Faz o a mesclagem da branch informada com a branch atual
git rebase "Nome da branch" #Faz o rebase da branch informada com a branch atual
git stash #Guarda as alterações feitas no working directory
git stash list #Lista os stashs
git stash apply #Aplica o ultimo stash
git stash apply "Nome do stash" #Aplica o stash informado
git stash drop #Deleta o ultimo stash
git stash drop "Nome do stash" #Deleta o stash informado
git stash pop #Aplica o ultimo stash e o deleta
git stash pop "Nome do stash" #Aplica o stash informado e o deleta
git rebase "Nome da branch" #Faz o rebase da branch informada com a branch atual
git rebase --continue #Continua o rebase apos resolver os conflitos
git rebase --abort #Cancela o rebase