O que é Git ?
Git é um sistema de controle de versão distribuído, desenvolvido por Linus Torvalds para o Kernel Linux, tem sido utilizado em diversos projetos pessoais e/ou por uma equipe de desenvolvedores.
Git tem ser tornado o melhor sistema de versionamento utilizado em projetos de software.
Depois de conhecer o Git, podemos instalar-lo no SO que usa, verificar a lista de comandos mais utilizadas do Git e praticá-lo.
Frontend do Git: Github, Bitbucket, Gitlab
Download do Git
Git Bash for Windows
No Linux
Debian:
# apt-get install git-core
CentOS:
# yum install git
Configurações
O local das configurações do Git são armazenadas no diretório de usuário do Sistema Operacional no arquivo .gitconfig
Ex: Windows: C:\Users\Reginaldo\.gitconfig e Linux: /home/reginaldo/.gitconfig
As informações armazenadas no comando seguinte são armazenadas no arquivo mencionado acima.
Setar usuário:
git config --global user.name "Reginaldo"
Setar e-mail:
git config --global user.email "usuario@dominio.com"
Setar editor:
git config --global core.editor vim
Setar ferramenta de merge:
git config --global merge.tool vimdiff
Setar arquivos a serem ignorados:
git config --global core.excludesfile ~/.gitignore
Lista de comandos mais utilizados
git init : usado para iniciar um repositório local do git(Esse comando criar um diretório .git com vários arquivos de configuração).
git add ou
git add . : Esse comando adiciona arquivos ao index, isso prepara os arquivos para um novo commit.
A diferença de um para outro é que o git add . adiciona todos os arquivos na index e o outro é individual.
git commit -m "comentário" : Adiciona uma mensagem ao commit do arquivo adicionado.
git remote add origin : Esse comando vincula o alias origin a um repositório remoto.
git push origin master : Esse comando enviar os arquivo que estão no estagio HEAD (arquivos comitados) para o servidor remoto.
No comando acima você deve ter notado ORIGIN e o MASTER, o origin é um alias para o repositório remoto ex: origin = https://github.com/user/repositorio.git e master é um alias para o branch local Eex: master = workdir/repositorio.
git pull ou git pull origin master : Esse comando obtém os atualizações do repositório remoto para o branch master ou um branch especifico. você deve usa-lo sempre antes de começar a alterar os arquivo para não ter conflito com a versão que está no repositório remoto.
git clone : Esse comando cria uma cópia no diretório atual do repositório local ou remoto.
git checkout -b : Esse comando cria uma nova branch com um nome especifico com ele você também pode navegar entre os branchs (Ex: git checkout master para voltar ao master). Você pode criar quantos branchs quiser e depois junta-los criando um merge.
git remote show origin : Esse comando lista a url do alias origin do repositório remoto.
git remote add origin (url) : Esse comando adiciona um novo repositório remoto ao alias origin.
git remote set-url origin (nova url) : Esse comando muda a url atual do alias origin para um novo repositório remoto.
git log --decorate --graph --oneline : Esse comando exibi um log detalhado e colorido com os commit realizados e o status das branchs.
git merge nomedobranch : Como o nome já sugere ese comando faz a junção de um branch em outro branch selecionado.
git checkout hashdocommit : Esse comando da um rollback para o commit especificado.
git reset –hard HEAD~1 : Um dos n comandos usados para revert um commit, similar ao rollback no svn.
git branch -d nomebranch : Esse comando deleta um branch local.
git push origin --delete nomebranch : Esse comando deleta um branch remoto.
git blame [caminho-arquivo-projeto] : Esse comando exibe a última modificação de quem escreveu.
git bisect start [--term-{old,good}= --term-{new,bad}=] : Esse comando pesquisa o commit que introduziu o bug.
Atualização do fork com o repositório oficial
git remote add upstream < end-oficial >: Adiciona a url do repositório oficial junto ao seu fork no repositório local
git fetch upstream: Atualiza o seu fork com o repositório oficial
git merge upstream/master master: Aplica o merge do fork com o oficial
Considerações finais
Caso ainda não tenha conta no Github ou Bitbucket ou Gitlab, cria uma conta, um repositório e os commits dos arquivos correspondente ao seu projeto.
É bom ressaltar que esses citados são frontend do Git para gerenciar os versionamentos de arquivos do projetos pela interface web. Como o Git é um sistema de controle de versão distribuído, pode-se usar os protocolos SSH ou FTP ou HTTP como servidor que ficarão os arquivos do projeto.
Referência
https://git-scm.com/book/pt-br/v2
Feito!