Sistema de Versionamento Git
Sobre
Este não é um tutorial para você aprender Git. Caso seu objetivo seja aprender, siga o Git Book (não se assuste com o tamanho dele: leia com carinho e atenção, é um livro muito bom que irá ensiná-lo a utilizar Git corretamente).
Para que este tutorial então? Para servir de consulta rápida dos comandos do Git, tendo pequenos exemplos e pequenas descrições do que você possivelmente quer fazer.
Comandos básicos
Inicializar uma pasta como repositório Git:
git init
Checar o estado atual das alterações do repositório:
git status
Adicionar um espelho remoto:
git remote add nome link
Atualizar repositório local a partir do remoto:
git pull
Atualizar repositório remoto a partir do local:
git push nome-do-remoto branch-remoto
Relacionar branch atual com um branch remoto (para atualizar com git push
/git pull
sem precisar especificar o remoto e branch):
git push --set-upstream nome-do-remoto branch-remoto
Adicionar alterações de um arquivo ao próximo commit (OBS: também utilizado para indicar que foi removido):
git add arquivo1 arquivo2 ...
Criar commit com as alterações adicionadas:
git commit -m "Mensagem do commit"
Identificar autor dos commits apenas no repositório atual:
git config user.name "Nome do autor"
git config user.email "E-mail do autor"
Identificar autor dos commits para todos os repositórios do usuário logado no computador:
git config --global user.name "Nome do autor"
git config --global user.email "E-mail do autor"
Exemplos
Inicializar repositório a partir do zero
Sendo "~/" a pasta do usuário atual:
~/ $ mkdir example
~/ $ cd example
~/example $ git init
Initialized empty Git repository in /home/user/example
~/example $ git remote add origin https://github.com/pet-comp-ufsc/git-example
~/example $ git push --set-upstream origin master
Inicializar repositório a partir de um remoto
Método 1
Para quando:
- Você não tem o projeto localmente; e
- Você quer que o nome da pasta seja o mesmo do repositório.
~/ $ git clone https://github.com/pet-comp-ufsc/git-example
~/ $ cd git-example
~/git-example $
Método 2
Para quando:
- Você não tem o projeto localmente; e
- Você quer dar um nome específico para a pasta do projeto.
~/ $ git clone https://github.com/pet-comp-ufsc/git-example example
~/ $ cd example
~/example $
Para quando:
- Você tem o projeto localmente; e
- Você quer relacioná-lo ao remoto.
~/ $ cd example
~/example $ git init
Initialized empty Git repository in /home/user/example
~/example $ git remote add origin https://github.com/pet-comp-ufsc/git-example
~/example $ git pull origin master