¿Los sistemas de control de versiones de FOSS funcionan para las empresas? [cerrado]

11

Digamos que una gran corporación planea reemplazar su sistema de control de versiones existente. Digamos que solo está considerando los sistemas de los principales proveedores que cuestan cientos de miles de dólares porque tienen "soporte".

¿El control de versiones en un entorno empresarial tiene que ser costoso? ¿Su corporación mediana / grande utiliza un VCS FOSS como SVN / Git / Mercurial? ¿Cuál ha sido la experiencia?

Tengo que pensar que no tiene por qué ser costoso, ya que hay muchas opciones gratuitas, y probablemente haya compañías que brinden soporte pagado para FOSS VCS si esa es la principal preocupación.

No pretendo que esta pregunta compare VCS o decida cuál es la mejor, sino que simplemente entiendo las experiencias con VCS en un entorno de TI corporativo.

jimueller
fuente

Respuestas:

29

Si.

  
En mi experiencia (ciertamente limitada), las soluciones que no son de software libre tienden a ser más "empresariales". Es decir,

  • Se integran con todo bajo el sol.
  • Tienen más controles integrados para la lógica empresarial compleja (permisos, control de acceso, aprobación, etc.).
  • Vienen con contratos de soporte y líneas de soporte técnico razonablemente receptivas.
  • Están bien publicitados para las personas no técnicas que toman decisiones de VCS a un alto nivel en grandes empresas.

Estos atributos los hacen atractivos para las grandes empresas, especialmente para las personas que no tienen que usarlos. Las alternativas de software libre, como contrarrestar lo anterior:

  • Tenga muchas herramientas de terceros para integrarlas con todo bajo el sol (en virtud de ser más populares que las alternativas propietarias), y tiende a ser más fácil desarrollar herramientas de terceros para ser SO.
  • Ver anterior: es más fácil obtener herramientas externas en torno a una herramienta limpia, simple y básica.
  • En virtud de ser más populares, tienen un apoyo comunitario más amplio.
  • No necesitan dicha publicidad.

Aparte de eso, mi experiencia con VCS gratuito común (mercurial / svn / etc.) los hace más rápidos, más confiables y más fáciles de usar.

Fishtoaster
fuente
55
+1: estoy mucho más feliz con SVN que alguna vez estuve con SourceSafe.
Jon Hopkins
55
@ Jon +1: estoy mucho más feliz con Mercurial que nunca con SVN.
Tim Post
1
@Tim - Actualmente evaluando informalmente Mercurial antes de una posible migración.
Jon Hopkins
8

Estoy de acuerdo con @Fishtoaster en que el control de versiones de FOSS tiene todas las características (o puede integrarse con otro software de FOSS que proporciona las características) que incluso la mayor "empresa" necesita.

Desafortunadamente, en mi experiencia, muchas decisiones en las empresas no son tomadas por personas que tienen conocimientos técnicos para tomar esa decisión. Es decir, el departamento de ventas de otras empresas se dirige directamente a las personas autorizadas para realizar compras en una empresa para comprar su software. FOSS ni siquiera echar un vistazo en porque no hay nadie venta a ellos.

En un lugar donde trabajé, utilizamos una de esas soluciones de control de versiones "empresariales". Fue lento (¡literalmente tomó más de una hora hacer un "check out" completo de la última versión del código!) Y tenía errores y todos se quejaron al respecto. Muchos desarrolladores en realidad harían el pago (tomando, como dije, más de una hora ) y luego establecerían un repositorio local de SVN o Mercurial encima de ese pago, codificarían en ese repositorio y solo lo volverían a verificar en el repositorio principal cuando necesario.

Tuvimos la suerte de poder instalar cualquier software que necesitáramos. Pero el hecho de que la gente haya subvertido el "proceso" de esta manera me dice que había algo muy mal en el proceso ...

Dean Harding
fuente
1
Eso es exactamente lo que he hecho, configurar mi propio SVN local ya que el VCS suministrado es tan terrible.
jimueller
4

La principal diferencia entre FOSS y el software comercial es que el primero se basa en el orgullo, mientras que el segundo se basa en los ingresos.

Pregúntese: ¿Qué tan felices están las personas que escribieron el software XYZ?

Si es FOSS, probablemente estén muy contentos porque, de lo contrario, ¿por qué se molestarían en perder el tiempo?

Si se trata de software comercial, realmente no se puede saber. Lo más probable es que a las personas se les pague por escribir algo que realmente no les gusta.

Entonces el software FOSS recibe más amor. Eso no significa necesariamente que sea mejor, pero si es un proyecto exitoso de FOSS, puede estar bastante seguro de que es mejor que cualquier cosa que pueda comprar ("El dinero no puede comprar la felicidad", ¿recuerda?).

¿Cómo puedes saber que es exitoso? Consulta el sitio web. Si el sitio web es actual y se ve bien, es lo suficientemente exitoso como para perder el tiempo en el sitio web (los desarrolladores de FOSS son un núcleo duro; no quieren perder tiempo en nada que no se rasque).

Eso deja el punto más importante: Soporte. Las empresas no compran software para usarlo legalmente sino para obtener soporte en caso de que algo salga mal (pensando en el sentido: si 100 personas no pueden trabajar y obtengo una solución en un día, eso vale $ 100,000). Afortunadamente, puede comprar soporte para el software FOSS (solo mire el sitio web para obtener sugerencias o pregunte en la lista de correo).

Entonces, sí, si realiza una evaluación y el software libre satisface sus necesidades, ya no hay razón para preferir el software comercial.

Aaron Digulla
fuente
2

Personalmente, he visto a SVN trabajar con éxito en una gran empresa, y he escuchado relatos de otras historias de éxito. Creo que una de las cosas clave que asusta a las empresas sobre el código abierto es la falta de soporte. Sienten que están en la cuerda floja sin una red de seguridad. Pero a menudo puede encontrar compañías que proporcionarán contratos de soporte para software de código abierto. Para SVN, hay CollabNet y otros.

RationalGeek
fuente
1
Pero SVN realmente no hace ramificaciones muy bien, básicamente apesta. Entonces, ¿cómo puede usar SVN en un proyecto en el que se encuentran, por ejemplo, más de 10 personas trabajando en la misma base?
Bjarke Freund-Hansen
@bjarkef: De vez en cuando realizo ramificaciones y fusiones con subversión. Creo que es una leyenda, que SVN apesta. Claro, Git y Mercurial se basan en un sistema completamente diferente, que se basa en ramas. Pero entra en conflicto no menos a menudo que Subversion. Por lo tanto, la fusión no es el problema, solo algunas personas prefieren el estilo que los repositorios y las ramas están organizados con DVCS.
Mnementh
3
Si. Realmente, desde mi punto de vista, SVN se ramifica fenomenalmente bien . Probablemente porque nuestro control de fuente antes era Visual Source Safe, que era abismal en la ramificación (y TODO lo demás).
John Christensen
@John: mi problema fue que pasar de un DVCS a un CVCS fue realmente difícil. Mi progresión de VCS ha sido RCS> VSS> Mercurial> SVN. Las dos primeras transiciones fueron fáciles e hicieron muchas cosas más simples, fáciles y rápidas. La última ha sido una pesadilla: incluso usar git-svn no puede deshacer la inflexibilidad inherente de la historia lineal anticuada de SVN. Espero con interés nuestro movimiento hacia git, aunque hubiera preferido la simplicidad de mercurial nuevamente.
Mark Booth