Git, Github e Gitlab: quais são as principais diferenças?

Git, Github e Gitlab: quais são as principais diferenças?

24 de outubro de 2019 0 Por Ramos de Souza Janones
Powered by Rock Convert

Git, Github e Gitlab: conheça quais são as principais diferenças entre eles e como escolher a melhor opção para seus projetos de software.

Pode parecer complicado para quem está entrando no mundo de desenvolvimento assimilar as várias ferramentas e tecnologias que existem, mas é fundamental que você saiba o que é Git e que, principalmente, não é a mesma coisa que Github ou Gitlab.

O que é Git?

Git é considerado o arroz com feijão do desenvolvedor. Não importa qual sua especialidade, você vai precisar dele e é importante que saiba utilizar do jeito certo.

Pela documentação oficial, Git é um sistema de controle de versão distribuído de código aberto e gratuito, projetado para lidar com tudo, de projetos pequenos a grandes. O que isso significa? Significa que com o Git é possível manter um histórico das alterações dos seus arquivos, sabendo quempor que e quando um arquivo foi editado.

Principal funcionalidade

A principal funcionalidade do Git, que o faz ser amplamente utilizado em projetos de desenvolvimento de software, é a possibilidade de fazer o controle de versões de modo colaborativo, ou seja, é possível que o mesmo arquivo seja modificado ao mesmo tempo por dois desenvolvedores diferentes, e que ambas as alterações sejam salvas sem que nenhum código seja sobrescrito.

GitHub lança plataforma de patrocínio a desenvolvedores

Para permitir o modo colaborativo, o Git utiliza o conceito de ramificação ou branch, onde cada branch é uma linha do tempo que possui marcos ou commits, e nesse branch os arquivos podem ser alterados livremente sem impactar outras ramificações.

Sendo assim, dois desenvolvedores podem trabalhar em ramos separadamente, desenvolvendo novas funcionalidades ou fazendo correções de bugs, e então quando decidirem juntar os dois ramos, o Git utiliza o conceito de mesclagem ou merge para isso.

Leia também:  

 

Curso completo de Games, inclusive Realidade Aumentada.

Powered by Rock Convert

A imagem a cima ilustra quatro ramos sendo atualizados paralelamente ao longo do tempo através de commits, e então o branch feature sendo mesclado no branch develop através do processo de merge.

Mas e agora, o que tudo isso tem a ver com Github ou Gitlab? Antes de explicar como o Git se relaciona com esses outros dois termos, vamos às explicações de Github e Gitlab.

Conhecendo os super poderes dos comandos Git e GitHub

Github e Gitlab, o que são?

Github e Gitlab são plataformas de hospedagem de código-fonte. Elas permitem que os desenvolvedores contribuam em projetos privados ou abertos (mais conhecidos como projetos open source). 

Nessas plataformas, cada projeto contendo um código-fonte é considerado um repositório. Por exemplo, se você participa de projeto em que é desenvolvido o site de um e-commerce, e o código do frontend é desenvolvido separadamente do código backend, cada um desses códigos-fontes serão hospedados como repositórios separados.

As duas plataformas oferecem vários recursos similares para hospedam de código fonte, sendo alguns como pull request, revisão de código, edição inline, fork e clone de repositórios, e integrações com ferramentas de terceiros.

Funcionalidades

Uma das principais funcionalidades que difere uma plataforma da outra, é o foco que o Gitlab vem dando à integração com ferramentas de DevOps. O Gitlab proporciona, nativamente, ferramentas de integração e entrega contínua ou CI/CD, além de métricas para acompanhamento de qualidade de código, performance e teste de usabilidade.

E como tudo isso se relaciona com o Git? Ambas fazem o controle de versão dos projetos hospedados utilizando o Git. Desse modo, quando você utiliza o Git no seu projeto, você pode acompanhar o versionamento do seu repositório em uma dessas plataformas.

No geral, as duas plataformas são muito boas para hospedagem de código, e cabe a você decidir qual delas faz mais sentido utilizar no seu projeto, uma vez que as duas utilizam Git como controle de versão.

VOCÊ ESTÁ NA SEÇÃO:   » Programação

React Native Do Zero Ao Profissional: crie apps para Android e IOSPowered by Rock Convert
Siga os bons!

Ramos de Souza Janones

Janones, é um empreendedor brasileiro apaixonado por empreendedorismo e tecnologia. Ao longo dos anos trabalhando com o desenvolvimento de softwares desktop desde a linguagem Clipper, passando pelo Delphi e atualmente com Java.

Optou pela formação de Publicidade e Marketing por sua segunda empresa de tecnologia ter participado do "boom" da internet nos anos 90 e na procura de melhorar seus conhecimentos em negócios.

Em razão da principal formação e profundos conhecimentos em programação e banco de dados, é capaz de realizar o desenvolvimento de aplicativos web, desktop e mobile com maior criatividade e inovação que profissionais de desenvolvimento com uma formação única e mais especifica, dedicada somente ao desenvolvimento de softwares.

Com toda sua experiência com empresas de software, sua formação e paixão por negócios escreveu o livro "Marketing para Empresas e Profissionais de Software", publicado pela editora carioca Ciência Moderna em 2012. Além de outros livros sobre programação.