Tutoriais | PETNews - Tutorial Github (parte 3)
Tutorial Github (parte 3)
Por Abner Matheus Costa de Araújo
(abner.araujo@ccc.ufcg.edu.br)
No tutorial da edição anterior, aprendemos a manipular o nosso repositório do Github através de comandos no Git Bash. Nesta edição, apresentamos a última parte do tutorial de Github, enfatizando mais alguns conceitos do Git, especialmente a criação e manipulação de branches.

O que é um branch?

Por que usar branches?

Criando branches

Navegando entre branches

Unindo branches

Deletando branches

Rotulando commits

Revisão



O que é um branch?

Branch, ou ramo, é uma linha de desenvolvimento de um programa. Num único projeto podem existir diversas branches trabalhando de maneira conjunta. A linha de desenvolvimento principal, como já foi discutido na edição anterior, é chamada de master. Você pode ainda, se desejar, unir vários branches em um só.

Exemplo esquemático de vários branches



Por que usar branches?

Principalmente por questões de segurança. Em geral, usa-se branches quando se deseja implementar uma nova funcionalidade sem que tais alterações afetem diretamente a versão estável do programa. Desta forma, caso esta funcionalidade não venha a funcionar, podemos facilmente deletá-la e retomar a funcionalidade antiga.



Criando branches

Vamos agora criar três branches e em cada um deles adicionar um arquivo de texto diferente. Com o Git Bash aberto, digite o seguinte código:

git branch

O comando “git branch” cria um novo branch com o nome que você definiu. Crie três deles: test1, test2 e test3.

Para que as alterações tenham efeito, você precisa usar o comando “push”.

Agora, com os novos branches criados, perceba as modificações em nosso repositório:

Agora que temos nossos branches, devemos ser capazes de navegar entre eles sem nenhuma dificuldade. Para isso, usaremos o seguinte comando:

git checkout

Mas não estamos interessados em apenas navegar, mas em alterar os três branches criados anteriormente de maneira paralela. Para isso, a primeira coisa que devemos fazer é ir para a branch test1, adicionar um arquivo a ele e repetir o mesmo procedimento para os outros branches. Para adicionar um arquivo, devemos repetir o mesmo processo descrito no tutorial da edição anterior: Vá até a pasta onde você clonou o repositório, adicione um arquivo lá, use o comando “git add ”, em seguida “git commit -m ” e por último “git push origin ”.

Repita o mesmo processo para os outros branches, variando apenas o nome do arquivo.

Perceba agora que, no nosso repositório, os branches possuem arquivos diferentes inseridos dentro deles:

E o melhor: essa mudança se reflete na hora de dar “checkout”, isto é, a mudança de arquivos dentro da pasta do seu computador acontece de maneira automática!



Unindo branches

Este é um dos processos mais trabalhosos, se não o mais, em controladores de versão: União de branches. Às vezes essa união pode gerar conflitos, que devem ser resolvidos manualmente, arquivo por arquivo.

Vamos agora unir os branches test1 e test2. Para isso, alterne para test1 e use o seguinte comando:

git merge

Ele irá copiar os arquivos do branch especificado para aquele em que você está atualmente trabalhando. Após o feito, precisamos usar o “push” para que as alterações sejam salvas.



Deletando branches

Agora que unimos test2 à test1, não temos mais utilidade para o branch test2. Podemos excluí-lo através do seguinte comando:

git branch -d

Entretanto, esse comando remove o branch apenas do seu computador. Para removê-lo também do repositório remoto, é preciso usar outro comando:

git push origin --delete

E está feito! : )

Com isso abordamos as principais técnicas em manipulação de branches.



Rotulando commits

Rotular commits é muito importante. Geralmente esse rótulo é usado para descrever a versão do software correspondente aquele commit. Primeiro você precisa obter o id do commit que você quer rotular. Para isso, use o comando “git log”. Com o id em mãos, podemos facilmente rotular um commit através do comando:

git tag



Revisão

Vamos recapitular os comandos explorados nesta edição?

git branch Cria um novo branch
git checkout Alterna entre diferentes branches
git merge Une dois branches diferentes
git branch -d / git push origin --delete Deleta um branch
git tag Adiciona um rótulo a um commit

Na primeira edição desta série, aprendemos a criar um repositório remoto no Github. Na segunda, a manipular este repositório através da linha de comando. Nesta, exploramos diversas técnicas de linhas de desenvolvimento. Com esse conhecimento, você já deve ser capaz de realizar a maioria das tarefas em termos de controle de versão.

Com isso encerramos nossa série de tutoriais sobre o Github. Se você tiver gostado, compartilhe com seus amigos! Não se esqueça também de curtir e compartilhar nossa página no Facebook.


Jornal PETNews - Edição: Rafael Rêgo e Abner Araújo - Revisão: Lívia Sampaio e Gleyser Guimarães
Grupo PET Computação UFCG, 2013. All rights reserved.