Por qué utilizar un sistema de control de versiones en diseño de PCB

Ari Mahpour
|  Creado: December 13, 2021  |  Actualizado: March 24, 2022
Por qué utilizar un sistema de control de versiones en diseño de PCB

Los sistemas de control de versiones (VCS) hace muchas décadas que existen en el mundo del software, pero pueden resultar sorprendentemente nuevos para algunas personas del sector del diseño electrónico. En este artículo se explica qué es un VCS, qué hace y por qué deberías utilizarlo en tus proyectos de diseño de PCB.

¿Qué es un sistema de control de versiones (VCS)?

Un sistema de control de versiones se utiliza para almacenar archivos y llevar un historial de revisiones. Si has escrito un documento, lo has publicado y, mientras tanto, has hecho algunos cambios, querrás llevar un registro de cuáles fueron esos cambios y cuándo se produjeron, ¿verdad? Eso es exactamente lo que hace un VCS, tanto para personas como para equipos. Los usuarios "confirman" o actualizan sus cambios y luego los envían a un servidor. Ese servidor realizará un seguimiento de todos los archivos que cambiaron cuando esto ocurrió, así como de los demás metadatos proporcionados por el usuario (por ejemplo, comentarios). Esto nos da un historial para volver atrás y ver quién hizo qué y cuándo. Y esto resulta especialmente útil cuando se producen cambios dentro de un equipo, cambios que deben deshacerse o revisarse. En lo que respecta específicamente al diseño de PCB, un sistema de control de versiones, como el proporcionado por Altium 365, hará un seguimiento de todos los cambios dentro de tu proyecto de diseño de PCB, desde actualizaciones de los parámetros de los componentes hasta cambios masivos en el trazado de pistas en la dispositicón de tu PCB.

Statu quo

Para apreciar realmente lo que nos ofrece un VCS, necesitamos entender el statu quo y sus limitaciones. Me encantaría poder afirmar que todas las personas a las que conozco utilizan algún tipo de VCS para sus proyectos de diseño de PCB, pero eso estaría muy lejos de la realidad. Hace más de dos años, escribí acerca del uso de Git dentro de Altium Designer y, en ese momento, era un concepto relativamente nuevo para la comunidad. Desde entonces, he visto un repunte en la adopción de VCS dentro de Altium Designer, pero sigo viendo lo que se describe en ese artículo: diseñar una tarjeta, comprimir el paquete y enviarlo por correo electrónico una y otra vez entre equipos... ¡dentro de la misma empresa! El segundo escenario clásico, que he visto que se vende como "método mejorado", es que todos colocan su paquete de diseño en una unidad compartida, ya sea en una red o basada en la nube. Aunque esto es indudablemente mejor, no permite realmente a los equipos colaborar entre sí. Todo el mundo termina trabajando de forma aislada y, a continuación, vuelca sus resultados finales en la unidad compartida. El ritmo de nuestro mundo es vertiginoso, y debemos colaborar combinando conflictos, comparando cambios y comentando en tiempo real. En esta época, el diseño de PCB sin un VCS es simplemente insostenible.

Pero soy la única persona que opina eso

Muchas personas diseñan por su cuenta y no sienten la necesidad de usar un VCS. Personalmente, llevo utilizando VCS (en alguna de sus múltiples formas) desde que comencé a programar y a hacer diseño de PCB. Lo hice principalmente por una razón: confianza.

  • No confiaba en que mi disco duro no fuese a fallar.
  • No confiaba en mi capacidad de acordarme de hacer una copia de seguridad de mi trabajo cada vez que hacía un cambio monumental.
  • No confiaba en ser capaz de recordar los detalles de una revisión a otra. 

Si tu proceso te ha permitido mitigar estos problemas, enhorabuena: ¡has implementado correctamente tu propio VCS! Si no es así, entonces eres como todos los demás y probablemente deberías usar un VCS, incluso para ti solo. Si alguna vez incorporas a otras personas a tu equipo, tener un VCS en marcha facilita su integración.

Qué nos ofrece un VCS

Cuando hablamos de implementar un VCS, como Subversion, Git, o Altium 365, pensamos en esquemas de revisión y soluciones de almacenamiento. Estas son las dos principales ventajas de usar cualquier VCS: un VCS nos proporcionará un historial de confirmaciones y una ubicación (generalmente en un servidor remoto) para almacenar todos esos archivos y actuar como copia de seguridad. Para algunos, esta solución puede ser suficiente, pero para la mayoría de los usuarios de hoy en día, especialmente cuando trabajan en colaboración con otros usuarios remotos, un VCS básico no es suficiente. En el apartado Usar Altium 365 sobre tu sistema normal de control de versiones, trataremos los conceptos y las herramientas necesarias para la colaboración moderna, que van más allá de lo que se encuentra en un VCS típico.

Conclusión

En este artículo hemos explicado qué es un VCS, qué hace y por qué deberías utilizarlo en tus proyectos de diseño de PCB. Hemos repasado algunos ejemplos de cómo es el diseño de PCB sin un VCS y las limitaciones que conlleva. Hemos descrito brevemente lo que proporciona un VCS estándar y hemos presentado la idea de pasar a una solución más avanzada como Altium 365. Para entender las características avanzadas de Altium 365 que van más allá de su VCS normal, consulta el apartado Usar Altium 365 sobre tu sistema normal de control de versiones.

No hemos hecho más que tocar la superficie de lo que es posible hacer con Altium Designer en Altium 365. Empieza hoy mismo la prueba gratuita de Altium Designer + Altium 365.

Sobre el autor / Sobre la autora

Sobre el autor / Sobre la autora

Ari is an engineer with broad experience in designing, manufacturing, testing, and integrating electrical, mechanical, and software systems. He is passionate about bringing design, verification, and test engineers together to work as a cohesive unit.

Articulos más recientes

Volver a la Pàgina de Inicio