Ventajas del uso de GIT

Conoce las ventajas de usar GIT, mejora tus habilidades y productividad trabajando con este control de versiones.

Publicado el 02 de Mayo de 2016
Compartir

El otro día comenzamos a hablar de Git , un extendidísimo sistema de control de versiones que ha parecido gustar mucho en esta comunidad., y comentaremos hoy algunas de las ventajas y desventajas de este tipo de sistemas.

Ventajas

  • Compartición selectiva : El desarrollo de la aplicación serán únicamente nuestro, pudiendo decidir qué parte de nuestro proyecto compartimos y con quién, restringiendo a que sólo pueda verlo, que tenga la posibilidad de añadir notas, comentarios o que pueda añadir cambios. No todo tiene porque ser público (aunque en la compartición encontramos la riqueza y agilidad que fundamenta el software libre ;).
     
  • Velocidad : Muchas empresas deciden implementar GIT como servicio local en su infraestructura física, por lo tanto el control de versiones se realizaría dentro de la propia red con la consiguiente ganancia en velocidad de acceso y escritura, así como eliminando el requisito de contar con una conexión a internet obligatoria. No obstante, contar con el respaldo de un hosting para estos menesteres siempre es un plus de seguridad pues ganaremos la despreocupación para con respecto de la seguridad y accesibilidad de nuestro trabajo.
     
  • Ramificación : Ya hablamos de la ramificación en una entrada anterior , y como vimos ofrece un amplio abanico de posibilidades a la hora de realizar cambios en la estructura principal, pudiendo crear diferentes ramas sobre las que aplicar nuestras modificaciones en entornos aislados de la línea principal de desarrollo.
     
  • Convergencia : Si en la creación de una rama del proyecto encontramos que uno de los cambios incluidos se integra tal y como deseamos, sin presentar conflictos con las diferentes partes de nuestra aplicación, podremos incluir o hacer converger dicha ramificación con el desarrollo principal de forma sencilla y segura, contando así con una nueva versión o revisión de nuestro proyecto lista para ser distribuida, compartida, liberada…
     
  • Sandbox : Esta sería una ventaja de una ventaja, ya que las ramificaciones nos preparan un entorno aislado de pruebas sobre el desarrollo de la línea central de nuestra app. Los cambios realizados en una de las ramas del proyecto no tendrán consecuencias para los usuarios que actualmente usen o accedan a la versión sin modificar o principal. Muy útil si lo que vamos a hacer es incluir servicios que antes no existían en nuestra aplicación y esto pudiese poner en peligro la estabilidad de otros componentes.
     
  • Flujo de trabajo adaptable : En el sector de los controladores de versiones encontraremos diferentes formas para gestionar el flujo de desarrollo de la aplicación, destacando entre éstos los modelos centralizados y los modelos de libre configuración. Con esto encontramos que trabajemos como trabajemos encontraremos un control de versiones que se adapte a nosotros o nuestra empresa, haciendo uso desde un simple sistema jerárquico hasta un ligeramente más complejo sistema centralizado. En este apartado Git gana puntos sobre la competencia, admitiendo multitud de configuraciones que nos permitirán dentro de su estructura organizar el trabajo tal y como deseemos nosotros, nuestro equipo de desarrollo, etc…
     
  • Seguridad : Pero… ¿y si tengo un sistema de control de versiones instalado en local y tengo una caída de la tensión eléctrica que provoca el apagado de la infraestructura? ¿Los datos se habrán corrompido en el proceso de escritura? La respuesta es que resultaría muy complejo, ya que en su inmensa mayoría, los controladores de versiones cuentan con sistemas de cifrado y otros tipos de medidas de seguridad que se aplicarán para que nuestros datos permanezcan lo más íntegros posible. Por poner un ejemplo, Git hace uso de sistemas de árbol SHA1 , lo que asegurará que hasta que no se realice la comprobación del cifrado o firma, los cambios no se escribirán en el servidor.
     
  • Coste : Obviamente podremos encontrar software de control de versiones que nos ofrezcan las mismas o similares características que nos otorga Git o BitBucket entre otros, pero lo que será complejo es que alguna de estas alternativas sea gratuita. Los sistemas de hosting pueden llegar a presentar algún coste, pero entrará en nuestro juicio contemplar si realizar una pequeña inversión en infraestructura online (asegurando ya de paso un poco más el acceso y seguridad de nuestro proyecto) o adquirir una costosa solución similar a los ejemplos ya citados. Poniéndonos en la piel de un empresario, creo que cuanto más consigamos ahorrar a la empresa mejor para la empresa (y para nosotros demostrando preocupación por los recursos económicos de la misma ;).

Desventaja

Afortunadamente, la desventaja presentada tiene fácil solución con el curso de Git, GitHub y GitLab guiados por profesionales con amplia experiencia en cada rama de enseñanza, siempre orientada a la formación de cara al mercado laboral actual.

  • Aprendizaje : Es algo por lo que tendremos que pasar cada vez que queramos incluir alguna nueva tecnología en un flujo de trabajo ya establecido. Deberemos formar al equipo de desarrollo o a aquellas personas a las que tendremos que dar acceso a nuestro trabajo en el servicio de control de versiones; para evitar así posibles errores en la realización de cambios (salvables por su puesto al estar ahí el registro de cambios y versiones ^_^).

¿Quieres gestionar tu código de una manera más eficiente, escalabre y rápida? Descarga esta Cheat Sheet de los 20 Comandos de GIT imprescindiblespara cualquier programador.

cta-cheat-sheet-20-comandos-git

También puedes visitar el Centro de recursos, encontrarás las últimas guías, ebooks y webinars de programación, sistemas y gestión del talento IT.


Compartir este post

También te puede interesar...

Equipos

Cómo evolucionará el perfil del CTO en los próximos años

30 Mayo 2023 Paul Marco Antonio
Equipos

Qué es el Deep Work y cómo fomentarlo en tu empresa

08 Mayo 2023 Carlos Heres
Equipos

Cómo preparar un onboarding para nuevos empleados IT

22 Mayo 2023 Laura Millán García

Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información.