Seguindo sua série de posts sobre Git, nosso #cloudspecialist Thiago Marques está de volta para falar sobre umas das principais funções do Git: as ramificações! Confere aí!

O pai ta on!!

Abordamos diversos conceitos e práticas com o git, desde iniciar um projeto até fazer os pull para um repositório central (remoto). Hoje iremos focar em uma das principais funções do git: ramificações, ou branches, que é inclusive o que inspira o logo da ferramenta.

Branches

Branches, é uma característica do git que permite criar ramificações do projeto principal, e deixá-la isolada.

Isso acaba dando um poder sem igual para o git, uma vez que se pode ter ramificações para cara área do projeto. Poderíamos por exemplo, ter o projeto “blog.darede.com.br”, e ter uma ramificação para conteúdo, onde os analistas fazem o seu commit com os artigos, e uma ramificação de frontend, onde os web-design fazem as alterações do layout da página.

O grande objetivo das branches é justamente dar a capacidade de trabalharmos em equipes segmentadas, sem uma atrapalhar a outra, e assim ganhar mais poder com entregas menores e mais rápidas.

Lembre-se sempre que gerar ramificações é simples, mas gerenciá-las pode ser muito complexo, então estabeleça um padrão para criação e o siga com definições claras do porquê está criando e os requisitos para voltar para a ramificação principal. Para os fãs de Marvel, imagine isso como as linhas de universo que aparecem na série Loki, ou seja, se algo sai do controle o projeto em si pode colapsar (nerd alert).

Para criar uma ramificação utilizamos o comando:

git branch <nome_da_branch>

 Obs: Desde Agosto/2020 tanto o gitlab quando o github já não trabalham mais com o nome ‘master’ e sim com ‘main’, caso você tenha instalado o git e for fazer o o clone de um projeto pode ser necessário alterar o nome da branch principal. Isso pode ser feito com o comando:

git branch -m master main

Git checkout

Ao passo que o branch cria uma nova ramificação, o checkout serve para alternar entre arquivos, commits e ramificações. Para essa etapa vamos focar na utilidade dele em ramificações, onde basicamente ele é capaz de navegar entre as ramificações que criamos com o git branch.

Na prática ele faz isso ‘movendo’ o HEAD (ponteiro) para a ramificação escolhida (por padrão), ou utilizando o HEAD de uma ramificação existe.

Talvez isso tenha ficado bem confuso, por isso abaixo mostramos na prática como funciona com a utilização de uma ferramenta chamada: Git Visualizing (https://git-school.github.io/visualizing-git/#free) , nela vamos fazer os seguinte:

1.       criar uma branch chamada conteudo;

2.       dar 2(dois) commits;

3.       voltar para a branch master;

4.       dar mais 2(dois) commits;

5.       criar uma branch de artigos com o HEAD da branch de conteudo;

6.       dar mais 2(dois) commits;

7.       voltar para branch de conteudo;

8.       dar mais 2(dois) commits;

O que vamos simular é justamente poder ter áreas de atuação paralelas, e uma área que pode ser ‘filha’ de outra e continuar o seu trabalho (nesse caso a área de artigos continuou, e herdou, os commits da área de conteúdo).

Perceba que quanto efetuamos o git checkout o HEAD vai alterando de lugar:

 That’s all folks! Be Happy!!!

foto-thiago-marques
Thiago Marques Technical Account Manager
thiago.marques@darede.com.br

Technical Account Manager da Darede, formato em Rede de Computadores, e pós graduado em Segurança da Informação. Possui ampla experiência em Datacenters e Service Providers, além de ser um entusiasta em DevOps e mercado financeiro.

OUTRAS PUBLICAÇÕES

Entendendo Docker

O Docker é uma das melhores plataformas para o deploy de uma aplicação. Para entender sua funcionalidade, confira esse artigo em nosso blog!

Cloud Computing: Tendências

Nos últimos anos, a cloud foi uma das áreas que mais cresceram, e a expectativa futura é ainda mais animadora. Confira o artigo sobre suas tendências.

Nós usamos cookies para garantir e oferecer a melhor experiência de navegação em nosso site! Mais informações