Lista de Comandos Essenciais para se utilizar o Git e Github no dia a dia
- #GitHub
- #Git
Para muitos de nós, iniciantes zerados em tecnológia, nunca ouvimos falar em "Git" e "GitHub" ou se escutamos nunca imaginamos o que seria, agora, vendo o quão a definição dessas palavras é primordial para o nosso conhecimento, venho trazer alguns comandos que definitivamente são primordias para o nosso desenvolvimento. Mas antes...
O que é git e github?
Git --> É um sistema de controle de versões distribuído mais utilizado, gratuito e OpenSource.
Em outras palavras, é ele que vai facilitar você quando estiver desenvolvendo um projeto. Ele vai te ajudar controlando o histórico de alterações de arquivos, segurança e certamente mais desempenho.
GitHub --> É uma plataforma de hospedagem de cógicos que tem ligação com o Git.
Ou seja, é ele quem vai ter salvar caso você perca todos os arquivos de um aparelho ou se deseja trabalhar em um projeto em diversos lugares. Trabalhando lado a lado com o git e ainda lhe ajudando por ter vários artigos utéis e poder compartilhar com amigos.
Comandos essenciais:
Depois que instalou e configurou o git utilizando os comandos do git config e o conectou em um repositório no GitHub (instruções em ambos os sites oficiais, link abaixo), chegou a hora de aprender comandos que certamente iremos utilizar o tempo todo. Abaixo vou listar os comandos e o que eles realizam.
GUIA: tudo que estiver entre [ ... ] deve ser colocado o que estiver descrito.
comandos de consulta:
git status
^ Responsável por mostrar o status da área de trabalho/área de preparação
git log
^ Responsável por apresentar todo o histórico de commits existentes
git reflog
^ Responsável por apresentar um histórico mais detalhado dos commits
git branch - v
^ Responsável por apresentar o último commit de cada branch
git branch
^ Responsável por apresentar as branchs existentes
git diff main origin/main
^ Responsável por apresentar quais os arquivos com alterações em conflito presentes no repositório local e remoto
git stash list
^ Responsável por apresentar uma lista de arquivos que foram arquivados
comandos de ação:
git clone [url do repositório no github]
^ Responsável por clonar um repositório do GitHub no seu.
mkdir [nome da pasta]
^ Responsável por criar uma pasta no diretório
git init
^ Responsável por tornar aquela pasta um repositório git
git clone [url do repositório no github] [novo nome]
^ Responsável por clonar um repositório do githun porém com outro nome.
git remote add origin [url do repositório no github]
^ Responsável por criar uma conexão com os repositórios do seu aparelho e do github.
git clone [url do repositório no github] --branch [nome da branch] --single-branch
^ Responsável por clonar apenas uma branch do repositório do github
touch [nome do arquivo.xx]
^ Responsável por criar um arquivo vázio.
git add [nome do arquivo] ou git add ..
^ Responsável por adicionar o arquivo ou todos na área de preparação.
git commit -m"[descrição da alteração]"
^ Responsável por salvar as alterações feitas.
echo [nome do arquivo] > .gitignore
^ Responsável por adicionar um arquivo ao gitignore onde será ignorado e não salvo.
touch [nome do aquivo] /.gitkeep
^ Responsável por adicionar um arquivo vázio a um local onde o git reconhecerá.
rm -rf .git
^ Responsável por remover o repositório git de uma pasta
git restore [nome do arquivo]
^ Responsável por restaurar u arquivo que foi modificado
git commit --amend -m"[nova mensagem]" ou git commit --amend + enter + i (para editar) e depois esc : wq (para sair)
^ Responsável por alterar a mensagem do último commit realizado, sendo o primeiro exemplo uma substituição e o segundo exemplo uma edição.
git reset --soft ou --mixed ou --hard [cache/código do commit para retornar]
^ Responsável por desfazer um commit retornando ao anterior, quando se usa soft, ele pega os arquivos do ultimo e salva com o anterior, quando se usa mixed, ele pega os arquivos do ultimo, mas não salva com o anterior, quando se usa hard, ele ignora e exclui todos os arquivos modificados que tiver no ultimo commit, voltando a estaca zero.
git reset [nome do arquivo]
^ Responsável por remover os arquivos da área de preparação.
git push -u origin main
^ Responsável por enviar o repositório local para o remoto
git pull
^ Responsável por puxar as alterações do repositório remoto e mesclar com o local
git checkout -b [nome da branch]
^ Responsável por trocar para uma nova branch que está sendo criada
git checkout [nome da branch]
^ Responsável por trocar para uma branch existente
git merge [nome da branch]
^ Responsável por mesclar uma branch a outra
git branch -d [nome da branch]
^ Responsável por excluir a branch indicada
git fetch origin main
^ Responsável por baixar as alterações do repositório remoto sem mesclar com o repositório local
git merge origin/main
^ Responsável por mesclar os arquidos dos repositórios no local
git stash
^ Responsável por arquivar as notificações de alterações
git stash pop
^ Responsável por trazer as alterações e excluir a alteração mais recente da lista
git stash apply
^ Responsável por manter essas alterações para uso posterior
Conclusão:
Sim, são muitos comandos e até que consigamos lembrar de todos vai demorar muito, portanto o essencial é que tenha todos esses comandos, e outros que você ache que sejam importantes anotados em um bloco de notas ou um caderno de fácil acesso.
Referências:
Todas as informações aqui contidas foram retiradas do curso "versionamento de código com Git e GitHub" do programa "Santander Bootcamp 2023 - mobile android com kotlin".
Caso tenham algo para acrescentar, estão convidados a comentarem para crescermos juntos!