Github x Gitlab x Bitbucket

Sistemas de Controle de Versão editar

Um sistema de controle de versão tem a finalidade de gerenciar diferentes versões de um código-fonte, documento e etc. Com isso ele te oferece uma maneira muito mais inteligente e eficaz de organizar seu projeto, pois é possível acompanhar um histórico de desenvolvimento, desenvolver paralelamente e ainda te oferecer outras vantagens, como exemplo, customizar uma versão, incluir outros requisitos, finalidades especificas e afins sem mexer no projeto principal ou resgatar o sistema em um ponto que estava estável, isso tudo sem mexer na versão principal.

GitHub editar

História editar

Lançado em 2008 e é usado desde então para que desenvolvedores possam hospedar seus projetos usando o sistema de controle de versão Git. O GitHub vem sendo o preferido entre os desenvolvedores por oferecer também alguns recursos de redes sociais, já que é possível seguir projetos de outros desenvolvedores e ainda comentar sobre eles. É escrito em Ruby on Rails pelos desenvolvedores da Logical Awesome, o que é um fato bastante interessante visto que a linguagem era muito nova na época com apenas quatro anos e já sendo utilizada em um projeto de grande porte e importância como o GitHub. Atualmente o GitHub hospeda projetos de grande importância para a comunidade de desenvolvedores. Entre eles podemos destacar o Kernel do Linux, Rails, Bootstrap e Django.

Características editar

Em abril de 2016 o GitHub reportou ter mais de 20 milhões de usuários, fazendo dele o maior host de código-fonte do mundo. O GitHub é usado principalmente para projetos de desenvolvimento, mas em adição a isso a plataforma consegue dar suportes aos seguintes formatos e recursos:

  • Documentação, incluindo arquivos README em vários formatos possíveis para edição.
  • Rastreamento de issues.
  • Wikis.
  • Pull requests.
  • Histórico de commits.
  • Gráficos: Pulse, contribuidores, frequência de codificação e etc.
  • Possibilidade de integrar com outras ferramentas.
  • Log de edições.
  • Notificações por email.
  • Opção de seguir um determinado usuário ou repositório e acompanhar evolução.
  • Emojis
  • Github Pages: Pequenos websites podem ser hospedados a partir de repositórios públicos. O formato da url é http://username.github.io.


Planos editar

O GitHub possui planos gratuitos e pagos. Optando pelo plano gratuito, o desenvolvedor não poderá ter direito a certas regalias que a plataforma oferece. Uma prova disso são os repositórios privados, onde para poder usufruir desse recurso, o desenvolvedor terá ao menos que ter adquirido o plano pago mais básico ou ter um plano de estudante.

 

Ferramentas de Integração editar

Um dos pontos fortes do GitHub é a vasta quantidade de ferramentas de integração disponíveis para a plataforma. Dando a possibilidade ao desenvolvedor a oportunidade de poder integrar seus projetos a essas ferramentas.

 

GitLab editar

História editar

A história do GitLab começa em 2011 onde dois desenvolvedores ucranianos, Dmitriy Zaporozhets e Valery Sizov, insatisfeitos com as opções de repositórios git no mercado, decidiram criar o GitLab como uma solução para isso. Originalmente o produto foi totalmente gratuito e open source distribuído sobre a licença MIT. Em julho de 2013, o produto foi dividido em: GitLab CE (Community Edition) e GitLab EE (Enterprise Edition). Em Fevereiro de 2014, o Gitlab anunciou a adoção de um modelo de negócio open core que consiste basicamente em oferecer uma parte ou versão do produto de forma gratuita e open source enquanto oferece também parte ou versão "comercial" como software proprietário. Assim como o GitHub, o GitLab também hospeda repositórios de organizações importantes no mercado mundial, como: Nasa, IBM, Sony, SAnDisk e Uber.

Características editar

Atualmente o GitLab possui quatro linhas de produtos:

  1. GitLab Community Edition: Gratuito, aplicação auto-hospedada, Suporte da comunidade
  2. GitLab Enterprise Edition: Paga, aplicação auto-hospedada, inclui diferentes funcionalidades e suporte.
  3. GitLab.com: SaaS gratuito para repositórios públicos e privados e suporte pode ser comprado a parte.
  4. GitHost.io: Da mesma forma que o GiHub, o GitLab oferece serviços de hospedagem de websites.

Planos editar

O GitLab oferece cinco planos para a comunidade de desenvolvedores. Um dos destaques para aqueles que não desejam adquirir um plano pago, é o fato de poder ter repositórios privados no plano gratuito, sendo um diferencial se comparado ao GitHub.

 

Ferramentas de Integração editar

Diferentemente do GitHub, o GitLab não possui uma vasta lista de ferramentas de integração. A seguinte lista mostra todas as ferramentas que o GitLab oferece suporte de integração:

  • Rastreamento de issues - JIRA, Redmine, Bugzilla
  • LDAP
  • Jenkins
  • OmniAuth
  • SAML
  • CAS
  • Kerberos
  • OAuth2 provider
  • OpenID Connect
  • Gmail actions buttons
  • reCAPTCHA
  • Akismet
  • Koding
  • PlantUML

Bitbucket editar

História editar

O Bitbucket anteriormente foi uma startup independente, fundada por Jesper Nohr. Em 29 de Setembro de 2010, o Bitbucket foi adquirido pela Atlassian. Inicialmente, o Bitbucket somente oferecia suporte para projetos cujo controle de versionamento fosse o Mercurial. Somente em outubro de 2011 que o Bitbucket oficialmente passou a oferecer suporte a git. Também hospeda repositórios de grandes portes como o GitHub e o GitLab. Dentre eles, podemos citar: Ford, PayPal, Starbucks e Pandora.

Características editar

O Bitbucket hoje possui mais de 5 milhões de desenvolvedores espalhados em mais de 900 mil equipes no mundo. Suas principais características podem ser acompanhadas pela seguinte lista:

  • Políticas de Pull request
  • Bitbucket pipelines - Build, test e deploy a partir do Bitbucket
  • Verificação de conta em 2 passos
  • Merge checks - Build dependent, revisão de código e controle de tasks
  • Code search
  • Git large File Storage (LFS) - Versionamento de arquivos grandes
  • Documentação, incluindo arquivos README em vários formatos possíveis para edição.
  • Rastreamento de issues.
  • Wikis
  • Bitbucket Pages - Websites com o domínio bitbucket.io

Planos editar

Existem diferentes planos que o Bitbucket oferece aos desenvolvedores. Basicamente os preços são definidos de acordo com a quantidade de usuários participantes do repositório. Para planos onde o usuário deseja que a hospedagem do repositório seja na nuvem, temos os seguintes planos:

 

Para planos empresariais e com grandes equipes e com hospedagem do servidor por conta própria, é possível adquirir os seguintes planos:

 

Ferramentas de Integração editar

O Bitbucket possui um bom acervo de ferramentas de integração. Não chega a ser tão completa como o GitHub, mas as principais ferramentas do mercado são suportadas pela plataforma. As principais podemos destacar:

  • JIRA
  • HiChat
  • Bamboo
  • Azure
  • AWS
  • Docker
  • npm
  • Sonar
  • SVN Mirror
  • Slack

Referências editar

Sistemas de Controle de Versao

GitHub

GitLab

Bitbucket