O Git é uma ferramenta essencial para qualquer programador.
O uso de editores de texto, como o Visual Studio Code, pode levar a algum desconhecimento dos comandos usados, quando precisamos de realizar outras tarefas, que não sejam um simples commit & push.
Comandos
Configuração
Antes de usarmos o git, temos de o configurar com os seguintes comandos:
git config --global user.name "Ricardo Pimentel"
git config --global user.email "eu@ricardopimen.tel"
git config --global user.name "Ricardo Pimentel"
git config --global user.email "eu@ricardopimen.tel"
Inicialização
Por norma o projeto é inicializado com o comando:
git init
git init
mas em muitos casos o projeto já se encontra criado, sendo apenas necessário clonar o projeto:
git clone https://link-do-repositorio.a-clonar.com
git clone https://link-do-repositorio.a-clonar.com
Commit, Push & Pull
O estado do ambiente de trabalho pode ser verificado com o comando:
git status
git status
A adição do ficheiros é feita de forma individual, ou de todos os ficheiros alterados, com os seguintes comandos:
# ficheiro único
git add ficheiro.js
# todos os ficheiros
git add .
# ficheiro único
git add ficheiro.js
# todos os ficheiros
git add .
Com os ficheiros adicionados, devemos de acompanhar o commit com uma mensagem:
git commit -m "Mensagem de commit"
git commit -m "Mensagem de commit"
A finalização e envio do commit para o upstream:
# origin maste referece ao branch
git push origin master
# origin maste referece ao branch
git push origin master
Para receber e juntar o conteúdo remoto, localmente, basta executar o comando:
git pull
# comando com mais detalhe
git pull --verbose
git pull
# comando com mais detalhe
git pull --verbose
Reverter ações
Para ficheiros que ainda não tenham sido adicionamos, podem ser revertidos com o comando:
git checkout ficheiro.js
git checkout ficheiro.js
Os ficheiros já adicionamos são revertidos com o comando:
# ficheiro único
git reset HEAD ficheiro.js
# todos os ficheiros
git reset HARD
# ficheiro único
git reset HEAD ficheiro.js
# todos os ficheiros
git reset HARD
Para alterar o commit mais recente basta executar o comando:
git commit --amend -m "Nova mensagem para o commit anterior"
git commit --amend -m "Nova mensagem para o commit anterior"
caso queiram adicionar novos ficheiros, é também possivel com o seguinte comando:
# executado depois de adicionar os novos ficheiros
# --no-edit faz com que a mensagem do commit seja a mesma, remover se necessário
git commit --amend --no-edit
# executado depois de adicionar os novos ficheiros
# --no-edit faz com que a mensagem do commit seja a mesma, remover se necessário
git commit --amend --no-edit
Para reverter o último commit basta executar o comando:
git revert HEAD
git revert HEAD
Caso seja necessário reverter para um commit especifico devem de executar o seguinte comando:
# 9eff3 corresponde aos primeiros caracteres do id do commit
git commit 9eff3
# 9eff3 corresponde aos primeiros caracteres do id do commit
git commit 9eff3
Branches
A criação de um novo branch é feita com o seguinte comando:
git branch nome_novo_branch
# para criar e alterar o branch atual
git checkout -b nome_novo_branch
git branch nome_novo_branch
# para criar e alterar o branch atual
git checkout -b nome_novo_branch
Para verificar todos os branches:
git branch
# todos os branches incluíndo os remotos
git branch -a
git branch
# todos os branches incluíndo os remotos
git branch -a
Para apagar um branch, deve de usar o comando:
# apagar localmente
git branch -d nome_do_branch
# apagar remotamente
git push origin --delete nome_do_branch
# apagar localmente
git branch -d nome_do_branch
# apagar remotamente
git push origin --delete nome_do_branch
Para juntar 2 branches, devem de se encontrar no branch que vai receber o merge e executar:
git merge nome_do_branch
git merge nome_do_branch