Los repositorios de código se han convertido, desde hace ya un buen tiempo, en una herramienta de gran ayuda para los desarrolladores, especialmente cuando los equipos de trabajo son grandes. Por lo tanto, no es necesario demostrar que el uso de un repositorio ayuda mucho en el desarrollo de proyectos. Sin embargo, cuando se trata de elegir un repositorio de código adecuado, hay una gran diversidad de donde elegir. Es por eso que vamos a revisar tres de los más populares.

¿Que características tiene un buen repositorio?

Un sistema de control de versiones puede ser de tres tipos:

  • Local: Todos los desarrolladores se encuentran en el mismo sistema de archivos.
  • Centralizado: Se tiene una copia del proyecto en un servidor central y los integrantes del equipo realizan una actualización de estos archivos de acuerdo a los cambios que realizan.
  • Distribuido: Los desarrolladores trabajan en su repositorio local y los cambios se actualizan entre repositorios.

Antes de continuar, veamos que características hacen a un buen repositorio:

  • Pull request: Cuando los usuarios realizan cambios en el código fuente y lo envían al repositorio, se les notifica a sus colaboradores para que analicen y revisen los cambios.
  • Revisión de código web
  • Edición: Si un repositorio tiene la posibilidad de sugerir una edición colaborativa en tiempo real, agrega mucho a la calidad del repositorio.
  • Seguimiento de errores: Todos los proyectos tienen errores. Así que es genial si un repositorio permite rastrear y resolver errores de forma colaborativa.
  • Autenticación two-factor para garantizar la protección de las cuentas de usuario.
  • La capacidad de crear bifurcaciones o clones del repositorio.
  • La posibilidad de compartir segmentos de código o archivos con cualquier persona que lo requiera.
  • Integración con servicios de terceros.
  • Importación de repositorios. Si los usuarios cambian de un servicio a otro, es una buena idea que los repositorios permitan importar proyectos existentes.
  • Licencia de código abierto en algunos casos. En ocasiones, las organizaciones necesitan organizar un repositorio interno en su propio servidor en lugar de utilizar los recursos web públicos existentes. El único de los tres repositorios que es de código abierto es GitLab.

GitHub

GitHub es el sitio web número uno para almacenar repositorios git. El sistema esta diseñado para permitir a los usuarios crear fácilmente sistemas de control de versiones basados en Git. ¿Por que es tan popular? Git admite fusiones y divisiones de versiones uniformes con la ayuda de herramientas de visualización y herramientas para la navegación a través del historial de desarrollo no lineal. Por ahora, GitHub alberga más de 50 millones de proyectos de código abierto.

Beneficios:

Existen muchas características que justifican la popularidad de GitHub. A continuación alguno de ellos:

  • Seguimiento de errores. Esta característica pertenece a las funciones de colaboración y permite mejorar la calidad del código al mantener registro de los errores de software detectados en el proyecto.
  • Búsqueda rápida: El repositorio proporciona una estructuración conveniente de proyectos que permite una búsqueda y clasificación eficiente. Además una indexación adecuada permite a los usuarios encontrar cualquier cadena de código en los repositorios públicos.
  • Comunidad: GitHub reporta tener más de 20 millones de usuarios a abril del 2017. Esta enorme comunidad de desarrolladores en todo el mundo es una gran fuente de experiencia y habilidades compartidas.
  • Compartir: El código fuente del proyecto no sólo se puede copiar con Git, también se puede descargar como archivo.
  • Trabajo conjunto: GitHub brinda funciones eficientes para la administración de equipos.
  • Compatibilidad: Los proyectos con el código en GitHub se pueden personalizar fácilmente a cualquier servicio host en la nube.
  • Admite importación con Git, SVN, TFS.

Desventajas:

  • El servicio no es completamente gratuito. Para acceder a todas las funciones de GitHub, se debe actualizar a un usuario Premium.
  • Limitaciones de tamaño. Los archivos no pueden ser mayores a 100 MB mientras que el repositorio puede alojar 1 GB de información.

GitLab

El servicio también esta desarrollado en la base del control de versiones de Git. A pesar de que la funcionalidad de GitLab es similar a su principal competidor, GitHub, existen algunas peculiaridades importantes. GitLab tiene versiones diferentes, como GitLab SAAS que es adecuada para las empresas y GitLab Community Edition, una solución individual para los usuarios.

Beneficios:

  • Es gratis. Eso significa que los usuarios pueden tener un número ilimitado de repositorios privados. Esto es la versión comunitaria, y los usuarios tendrán que pagar si requieren la versión empresarial. Esta última agrega algunas características adicionales a la funcionalidad básica que mejora la interacción con herramientas en línea, flujo de trabajo y administración de servidores, entre otras.
  • GitLab opera bajo una licencia de código abierto.
  • Seguimiento de errores y edición de código basado en la web.
  • Integración con LDAP que permite localizar y acceder a diversos recursos de internet. GitLab EE soporta varios servicios LDAP y sincronización de grupos.
  • Soporta la importación de Git.

Desventajas:

  • Interface relativamente lenta
  • Frecuentes problemas técnicos con los repositorios

Bitbucket

El servicio también es muy similar a GitHub y refleja la mayoría de sus características con ligeras diferencias. Bitbucket esta mejor orientado a los equipos de desarrollo profesional, ya que proporciona grandes beneficios para ellos, como repositorios privados gratuitos, integración con Jira, revisión de código avanzado  y CI/CD (Integración Continua/Despliegue continuo) integrado. Al mismo tiempo, con el crecimiento del equipo, Bitbucket ofrece condiciones de precios más adecuadas comparadas con GitHub y GitLab. Bitbucket también proporciona una modelo de implementación flexible para equipos.

Beneficios:

  • Repositorios privados para equipos pequeños. Equipos pequeños, hasta 5 integrantes, pueden obtener un número ilimitado de repositorios y 500 minutos de compilación. En la oferta empresarial, Butbucket cobra $5 por usuario al mes, mientras que GitHub cobra $21.
  • Bitbucket tiene una búsqueda consistente de código. En lugar de simplemente indexar su código como texto, Butbucket utiliza la búsqueda semántica que analiza la sintaxis de su código, asegurando que las definiciones que coincidan con su término de búsqueda tengan prioridad sobre los usos y nombres de las variables.
  • El enfoque empresarial de Bitbucket significa que encontrará funciones como la lista blanca de IPs y verificación en dos pasos para dar a los administradores mayor control sobre quién puede ver, enviar o clonar un repositorio de código privado.
  • Bitbucket viene con Trello para que pueda comenzar con un gran rastreador de problemas gratuito o se puede aprovechar la existencia de una instancia de Jira. Al ser propiedad de Atlassian, Jira y Bitbucket, se integran en cada etapa del desarrollo, desde la creación hasta la implementación. Con componentes de seguimiento de errores integrados, Jira actualiza automáticamente la información sobre el problema detectado.
  • Importación de proyectos Git existentes desde Excel, Github, entre otros.
  • Condiciones especiales para estudiantes y profesores.
  • Compatible con importaciones de Git, CodePlex, Google Code, SVN.

Desventajas:

  • No es de código abierto, pero admite proyectos de código abierto.

Realice su elección

Como puede observar, cada repositorio tiene sus fortalezas y debilidades. Los tres: GitHub, GitLab y Bitbucket tiene una audiencia leal por varias razones.

De los tres servicios de administración de repositorios, solo GitLab es de código abierto. El código fuente de GitLab Community Edition está disponible en su sitio web, la versión corporativa es cerrada. GitHub, que alberga el mayor número de proyectos de código abierto, no es de código abierto. Bitbucket no es de código abierto, pero cuando compra una versión independiente, se proporciona el código fuente completo con las opciones de configuración del producto.


Este artículo se encuentra basado en GitHub vs. GitLab vs. Bitbucket: Which code repo should you choose?

GitHub vs. GitLab vs. Bitbucket: ¿Que repositorio elegir?
Si te gusto, comparte ...Email this to someone
email
Share on Facebook
Facebook
Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Share on Google+
Google+
Etiquetado en:        

Un pensamiento en “GitHub vs. GitLab vs. Bitbucket: ¿Que repositorio elegir?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Facebook
A %d blogueros les gusta esto: