Este é um repositório com comandos básicos do Git e para que servem.
- git config --list: lista todas as opções de configuração do git pela linha de comando.
- git init: inicializa um repositório do git (é utilizado quando criamos um diretório e queremos que ele se torne um repositório git).
- git add filename: adiciona o arquivo para ser comitado.
- git add -m "" filename: adiciona o arquivo com possibilidade de colocar uma mensagem no commit.
- git commit filename: comita as alterações do arquivo.
- git commit -am: adiciona todos os arquivos modificados e permite colocar a mensagem no commit.
- git log: mostra o log de ações do repositório.
- git log --decorate: trás mais informações no log, como branches, merges, etc.
- git shortlog: mostra um log resumido com autor do commit, com quantas interações e respectivas mensagens.
- git log --graph: mostra um log com os acontecimentos entre as branches, merges, etc.
- git show HASH_DO_COMMIT: mostra o que aconteceu com os arquivos daquele commit em específico, o que foi adicionado, o que foi modificado, etc.
- git diff: mostra as diferenças nos arquivos que foram mexidos. (Usar antes do commit é interessante para ver as mudanças).
- git diff --name-only: mostra apenas os nomes dos arquivos que foram modificados.
- git reset HEAD filename ou git reset HEAD: tira da fila dos arquivos adicionados (arquivos que foram adicionados no stage pelo git add).
- git reset --soft: volta as alterações feitas em um commit feito de forma incorreta e deixa os arquivos no status "modified". * Deve-se escolher um commit antes do feito incorrtamente.
- git reset --mixed: volta as alterações feitas em um commit feito de forma incorreta e deixa os arquivos no status "not staged". * Deve-se escolher um commit antes do feito incorrtamente.
- git reset --hard: volta as alterações feitas em um commit feito de forma incorreta e remove todas as alterações feitas nos arquivos. * Deve-se escolher um commit antes do feito incorrtamente.
- git checkout filename: volta o arquivo como era antes das mudanças feitas (usar esse comando antes de comitar as alterações).
- git remote: mostra o repositório remoto que o git está ligado.
- git remote -v: mostra o endereço do git no repositório remoto.
- git remote add origin ENDERECO_GIT: adiciona um repositório remoto ao seu repositório local.
- git push: envia as modificações para o servidor
- git push -u origin master: indica para onde eu quero fazer o push. O primeiro parâmetro é o destino e o segundo é o branch que contém a modificação.
- git push origin master --tags: realiza o push das tags para o servidor remoto.
- git push origin :TAG: apaga uma tag criada no repositório remoto.
- git push origin :BRANCH: apaga um branch criado no repositório remoto.
- git clone ENDEREÇO_REPOSITÓRIO PASTA_DESTINO: realiza o clone de um repositório remoto para a sua máquina local.
- git checkout -b NOME_BRANCH: cria um novo branch.
- git checkout NOME_BRANCH: realiza a troca do branch ativo.
- git branch: mostra quais branches existem e em qual você está atualmente.
- git branch -D NOME_BRANCH: apaga o branch.
- git merge NOME_BRANCH: Faz a junção de um branch com o atual. Este comando cria uma nova linha no gráfico e um novo commit para fazer a união.
- git rebase NOME_BRANCH: Faz a junção de um branch com o atual. Este comando simplesmente faz a junção dos branches, sem criação de um novo commit para isso.
- git stash: grava as modificações que você fez em sua branch, criando um "WIP" (Work In Progress). Depois disso, se realizarmos um git status iremos ver que as modificações anteriores não estão mais aplicadas na branch.
- git stash apply: aplica as modificações que estavam salvas no comando git stash em sua branch atual.
- git stash list: lista os "stashes" feitos até o momento.
- git stash clear: apaga tudo que você gravou em stash.
- git tag: lista as tags criadas no repositório.
- git tag -a VERSÃO -m MENSAGEM realiza a criação de uma tag para o seu projeto.
- git tag -d TAG: apaga uma tag em seu repositório local.
- git revert HASH_DO_COMMIT: cria um novo commit no repositório revertendo algum commit feito de forma incorreta. Geralmente usado quando alguma código quebra e devemos revisá-lo posteriormente, voltando para um estado em que o sistema não gerava problemas.