¿Cuáles son los pros y los contras de los complementos SVN para Eclipse, Subclipse y Subversive?

SVN en Eclipse se divide en dos campos. La gente de SVN ha desarrollado un complemento llamado Subclipse . Las personas de Eclipse tienen un complemento llamado Subversivo . En términos generales, ambos hacen las mismas cosas. ¿Cuales son las ventajas y desventajas de cada uno?

Ambos son muy similares, pero Subversive es el “eclipse svn provider”. Principalmente uso Subversivo debido a algunas características convenientes:

Agrupación de la historia

Cuando estoy navegando por el historial de una sucursal en lugar de solo ver un montón de filas por cada confirmación, puede agrupar las confirmaciones por hoy, por semana, etc.

Mapeo de tronco, twigs y tags

Subversivo asume el diseño de svn predeterminado: tronco, twigs, tags (que puede cambiar), por lo que siempre que quiera etiquetar o bifurcar, se hace un clic y proporciona el nombre de la etiqueta o bifurcación.

Como dije, estas son diferencias menores que me parecen convenientes. Ambos funcionan muy bien con mylyn, pero en general no hay muchas diferencias con estas dos extensiones.

Sin embargo, fusionarse con Subversivo es un dolor (no lo he probado en Subclipse), nunca he podido fusionarme con éxito. La vista previa de la fusión es genial, pero nunca completará la fusión o demorará mucho. La mayoría de las veces completé la fusión a través de la línea de comandos sin ningún problema.

Voy a tomar un descanso al responder esto. Soy un líder de proyecto para Subclipse, y administro todos los lanzamientos, etc. para el proyecto. Entonces mis prejuicios son obvios.

No voy a hablar demasiado sobre Subversivo. Claramente, hay usuarios que lo usan y les gusta. Funcionalmente los productos son muy similares ya que ambos son productos maduros.

Una cosa que quiero comentar es esta noción de que de alguna manera Subversivo es el complemento “oficial de Eclipse”. Eso simplemente no es cierto, ya que no existe tal designación. Eclipse es una base de código abierto y cualquier proyecto que quiera seguir sus reglas, procesos y requisitos de IP, etc. puede alojar su proyecto con la base. Eso no lo hace más o menos oficial que cualquier otro complemento.

También notaré que Subversivo ha permanecido en la fase de “Incubación” desde su inicio, y no me parece que alguna vez cumpla con los requisitos para la graduación. Como puede ver aquí, solo ha habido un committer en el proyecto y la actividad de commit se ha reducido a niveles muy bajos.

Subversivo – Proveedor del equipo SVN

Entonces, ¿por qué deberías usar Subclipse? Estamos activamente involucrados con Subversion en sí. Soy miembro de Subversion PMC y ayudo a mantener los enlaces de lenguaje Java para que nosotros (y otros proyectos como Subversive) podamos usar la API.

Trabajamos directamente con Subversion para definir y mejorar la API y asegurarnos de que las funciones necesarias estén expuestas a clientes como Subclipse. También trabajamos estrechamente y colaboramos con los equipos de Integración de Visual Studio ( AnkhSVN ) y TortoiseSVN para asegurarnos de que haya una experiencia de usuario relativamente uniforme entre los clientes.

Subclipse todavía se mantiene activamente y mantenemos el soporte para Eclipse versiones 3.2 a 4.2. Siempre estamos tratando de escuchar comentarios e incorporar ideas de la comunidad. Las versiones recientes 1.8.x incluyen cambios internos que mejoran en gran medida el rendimiento de Eclipse cuando se trabaja con proyectos grandes (es cuando realmente lo ve).

Subclipse ha liderado el camino en áreas como el soporte para el seguimiento de fusiones, donde trabajamos en estrecha colaboración con el equipo de Subversion al agregar esta característica por primera vez en 1.5 y luego evolucionar en versiones posteriores. Con frecuencia, éramos los consumidores iniciales de la nueva API y proporcionamos al proyecto los comentarios necesarios para reforzar la función. También introdujimos una función gráfica de revisión gráfica hace un par de años, convirtiéndonos en los primeros en llevar esta función largamente solicitada a los usuarios de Eclipse.

Si hay funciones de interfaz de usuario específicas en Subversivo que a la gente le gustaría ver creadas en Subclipse, lo invito a visitar nuestra comunidad y participar en nuestros foros de discusión. Quizás otros usuarios compartan sus puntos de vista y podamos mejorar la interfaz de usuario juntos.

Foro [Usuarios de Subclipse] .

Eclipse 4.2 es la última versión en el momento de esta publicación, pero es seguro suponer que Subclipse admitirá todas las futuras versiones de Eclipse a medida que se realicen.

Con cada nueva versión de Eclipse, instalo Subversive, porque es el estándar proporcionado por Eclipse. Y cada vez, tiene problemas para reconocer mis proyectos preexistentes.

Así que termino desinstalando Subversive e instalando Subclipse, lo que funciona maravillosamente. También utilizo SVN con frecuencia desde la línea de comandos y en Eclipse, y Subclipse no tiene problemas con esto.

Después de leer esta publicación, cambié a Subclipse incuestionablemente.
http://eclipsezone.com/eclipse/forums/t77149.rhtml#92035407

Si se fusiona mucho con Subversion, probablemente prefiera CollabNet Desktop – Eclipse Edition. Debe registrar una cuenta con CollabNet para obtener la descarga, pero es gratis. Es esencialmente Subclipse con una mejor interfaz de usuario de fusión.

No estoy afiliado a CollabNet.

CollabNet ha hecho que su cliente mejorado de fusión esté disponible para usuarios no registrados de Subclipse. Lo obtiene seleccionando la función CollabNet Merge Client al instalar Subclipse desde el sitio de actualización.

Yo diría Subclipse, ya que ni siquiera podía hacer funcionar Subversivo;)

De hecho, creo que los dos son una mierda. Usar TortoiseSVN es una solución mucho mejor en mi opinión. Es mucho más robusto y tiende a funcionar mejor, y siempre he tenido problemas de integración con Subclipse y Subversive.

Ambos tienen verrugas bastante atroces, pero no pude hacer que Subversivo trabajara con un proyecto que había revisado desde la línea de comandos, y eso fue un obstáculo para mí.

Probé con ambos, y tanto Subclipse como Subversive son horribles. Ambos son difíciles de instalar. Si usa Subversive, no puede usar un cliente SVN externo .

Sin embargo, debe tener un cliente SVN instalado en Eclipse para realizar un seguimiento de los cambios y también para no dañar su repository local.

Tengo instalado Subclipse , pero uso TortoiseSVN para hacer realmente comits / tagging / branching / merging.

Subclipse, porque al menos funciona.

Subversivo ha sido un balde de fracaso para mí hasta ahora. No funcionaría bien con todos mis viejos proyectos que había revisado con Subclipse.

Ciertamente, ambos complementos IDE tienen sus problemas. Pero tampoco impide el uso paralelo de otras soluciones como TortoiseSVN o línea de comandos. Uso los tres para mis proyectos en el trabajo.

Lo importante a recordar es que todo el software SVN de su cliente debe usar el mismo formato de archivo SVN, que difiere entre las versiones de SVN, o si está buscando problemas.

Otro problema que encontramos es cuando el software de su cliente usa un formato de archivo SVN diferente al del servidor. (Por formato de archivo, me refiero a la forma en que se representa toda la información en todos los archivos .svn aparentemente invisibles que registran de manera efectiva lo que SVN necesita saber sobre los archivos de su proyecto). Eso puede causar esgulps. Hay un error documentado entre el servidor 1.5 y 1.6 clientes, pero no puedo encontrar el enlace ahora mismo.

Tuvimos problemas al ejecutar el complemento superior (IMO) Subclipse 1.6 debido a incompatibilidades con nuestro servidor SVN 1.5.5. Así que volvimos a Subversivo. Funciona bien, aunque es lento y algo defectuoso (pero mejora). Sin embargo, cambiaremos a Subclipse cuando nuestro servidor esté actualizado. Y sí, revisamos nuestros proyectos con TortoiseSVN e los importamos a Eclipse (es más rápido).

Descubrimos que, como dicen otros carteles aquí, NO funcionaría si ejecutaramos versiones más nuevas de TortoiseSVN que escribieran archivos en formato 1.6.x, pero cuando volvimos a TortoiseSVN 1.5.x, funcionó bien. Lo mismo ocurrió con el cliente de línea de comandos (que aprovechamos con nuestras tareas Ant ).

Elegí ir con Subclipse ya que está más estrechamente relacionado con el proyecto de Subversion y, por lo tanto, es más probable que maneje mejor la funcionalidad básica de SVN. Si no puede realizar ninguna función, entonces tengo TortoiseSVN como copia de seguridad.

Solo una actualización. Recientemente reinstalé Eclipse y tuve que elegir Subclipse vs Subversive. Yo también tuve problemas para tratar de hacer que Subversivo funcionara, así que opté por Subclipse.

Se instaló perfectamente en mi máquina Linux de 64 bits y funciona perfectamente. Cartografié las funciones más comunes como Update, Commit, .. para atajos y es una explosión. La fusión también es buena, aunque para fusiones más grandes sigo recurriendo a TortoiseSVN. Lo intenté con 3.5 y 3.6, y ambos funcionan bien. Terminé usando 3.5 porque por algún motivo el enlace de claves no funcionaba con 3.6.

Si está utilizando svn + ssh como protocolo para acceder a su repository, le sugiero encarecidamente que elija Subclipse: Subversive no es lo suficientemente inteligente como para recordar sus credenciales correctamente y le solicita nombre de usuario y clave privada cada vez que actualiza su copia de trabajo y también para cada svn-externo que pueda haber configurado.

Las opciones de “recordar credenciales” están rotas en este contexto y lo han sido desde el primer lanzamiento público de Subversivo.

Si está utilizando uno de ellos en su empresa y tal vez quiera agruparlos en sus propios productos basados ​​en Eclipse, su vida es mucho más fácil con Subclipse, ya que está disponible bajo la licencia pública de Eclipse.

Subversivo por otro lado necesita los llamados conectores para funcionar completamente. Y esos tienen licencias separadas y diferentes. Por lo tanto, puede terminar con dos o tres licencias diferentes solo para la funcionalidad Subversiva, mientras que el rest de los complementos de Eclipse están justo debajo de ese único EPL. Esa es también la razón por la cual esos conectores no están alojados en eclipse.org.

Y es por eso que se descargan dinámicamente después de la instalación Subversiva (lo que también significa que simplemente duplicar el sitio de actualización de eclipse.org no le ofrece una instalación Subversiva fuera de línea utilizable en la red de su empresa).

Hasta mayo de 2008 estaba usando Subclipse, pero debido a problemas con algunos proyectos, cambié a Subversive y lo estoy usando sin problemas. Si estás haciendo algo tan elegante como comstackciones sin cabeza de Buckminster , entonces Subversivo es definitivamente el único con el que ir.

Si usa TortoiseSVN y actualiza regularmente la versión, es posible que Eclipse con Subversive pierda toda la información de SVN y genere algunos errores de miedo.

La razón por la cual la nueva versión de TortoiseSVN agrega nuevos metadatos que Eclipse Subversive no comprende a menos que también mantenga sus conectores Eclipse SVN actualizados también.

Generalmente utilizo el conector SVNKit, por lo que TortoiseSVN 1.5.x funcionará con Eclipse SVNKit conector 1.5.x y TortoiseSVN 1.6.x funcionará con Eclipse SVNKit conector 1.6.x.

Subversivo tiene más ventajas que el Subclipse que se enumeran a continuación. Pero solo una característica que no tiene Subversion es tan crítica sobre el uso de las twigs. Entonces tenemos que usar Subclipse .

Ventajas subversivas :

  • La vista y los icons son más informativos
  • Después de actualizar los elementos de sincronización, el archivo confirmado se cierra.

Ventaja de subclipse

  • capacidad de comparar dos twigs

Subclipse +1
-1 Subversivo

Subversivo se confunde incluso después de una refactorización menor y tiene problemas de validación como el anterior.

Medio ambiente: STS 2.7.2 (basado en Galileo)

Para mí, ni es mejor ni peor, pero Subversive es el plugin SVN predeterminado en la plataforma Eclipse Ganymede, por lo que existe la posibilidad de que esté mejor integrado con Eclipse.

Como una adición a la respuesta de Brendons:

Usamos Subversion desde la versión 1.5.1 y usamos Subclipse primero. Pero como dependemos en gran medida de la función de fusión, cambiamos a Subversivo, que es más conveniente y tiene una opción de Reintegración separada en el cuadro de diálogo de fusión.

Un error que podría dificultar la fusión es que si selecciona revisiones explícitamente, no toma la última revisión en la lista. Por ejemplo, “101-100” no combina r100 y “100”, por lo tanto, no fusiona nada. (versión 0.7.5)

Y tiene los mismos indicadores que el complemento CVS.

Mientras conseguí que ambos trabajasen con Helios, tengo una ligera preferencia por Subclipse debido a su excelente compatibilidad con las propiedades de bugtraq ( detalles aquí ).

La vista Historial muestra una columna separada (llamada bugtraq:label , que muestra BUGID s), y el menú contextual tiene una acción dedicada a “Abrir URL Bug” (vinculándose a bugtraq:url ) – No pude entender cómo acceder cualquiera de esta información con Subversivo

He estado usando Subversivo desde que me actualicé a Ganimedes. Lo uso con Eclipse en Linux (Ubuntu y Fedora Core), Windows XP y Mac OS X.5. Aparte de algunos problemas para que Subversion 1.5.1 use las bibliotecas de seguridad correctas en Mac OS, no he tenido ningún problema. Dado que ha sido adoptado como un proyecto de tecnología de Eclipse, me inclino a apostar por él, en términos de esperanzas a largo plazo.

Realmente no lo he usado, pero parece que Subversive admite ” Check Out As “, al igual que el soporte de CVS incorporado.

Por ejemplo, para tomar un proyecto de SVN y poder ejecutarlo como un proyecto web, uno podría hacerlo de una vez. Pero para obtener el mismo resultado en Subclipse, simplemente reviso las fonts y corro:

  mvn eclipse: eclipse -Dwtpversion = 2.0 

He usado ambos, y aunque Subclipse ha sido escamoso para mí, Subversive (al menos con una versión anterior) bloqueó una cuenta de mi compañero de trabajo cuando accidentalmente ingresó las credenciales incorrectas (el inicio de sesión de la red se usa para acceder al repository de subversión )

Subclipse tiende a desorganizarse con el tiempo. Si Eclipse no se actualiza periódicamente, parece que Subclipse pierde su información de seguimiento de archivos. Honestamente, sin embargo, dado que tengo el Easy Explorer Plugin , utilizo Subversive (ocasionalmente) para el historial y cambio de información, pero me resulta fácil explorar y usar TortoiseSVN para confirmaciones y actualizaciones de los proyectos que sé que he cambiado recientemente.

Acabo de descubrir que no puedo entender cómo ver una diferencia de propiedades con Subclipse. En Subversivo, selecciona dos revisiones en la vista de historial, haga clic con el botón derecho y seleccione comparar propiedades en la ventana emergente. Esto es suficiente para que me quede con Subversivo.

La razón para intentar cambiar era el extraño comportamiento de Subversive en OS X: Algunas operaciones automáticas llamadas ‘svn cache update’ hacían que la CPU se mantuviera en niveles anormales después de cada ‘svn update’, siempre tardando mucho tiempo en completarse.

FWIW, estamos usando una versión antigua del servidor SVN (1.4 algo), y me parece recordar que en un momento hubo una actualización de Subclipse que rompió la compatibilidad con versiones anteriores, y la esencia era “nadie debería estar en una versión tan antigua de SVN de todos modos “.

Subversivo fue el único que parecía ser capaz de manejar la versión anterior. No puedo recordar los detalles, sin embargo, lo siento.

Probamos ambos en nuestro equipo.

Dado que Subclipse (el de Galileo / Helios) tuvo algunos problemas para autenticar nuestro servidor SVN a través de VAS, no tuvimos ningún problema en otro lado, es decir, el cliente TortoiseSVN, los navegadores (excepto Internet Explorer 7).

Entonces instalamos Subversive y el problema fue resuelto.

La ventaja de Subclipse sobre Subversivo … ¡ACTUALMENTE FUNCIONA!

Utilicé Subclipse hace mucho tiempo cuando desarrollé un complemento de colaboración para Eclipse que dependía de Subclipse. La parte de Subclipse del complemento nunca fue un problema, aunque toda la ant aún me confunde un poco, pero lo bueno es que no tienes que entender cómo funciona la parte Ant para saber cómo usarla.

Estoy intentando instalar PDT hoy (que es un blog completo) y luego Subversivo porque, como muchos, se presenta como “El plugin Eclipse SVN”. No pude instalar los cuatro conectores a la vez, así que tuve que instalarlos uno a la vez y uno a la vez los intenté, y de uno en uno no se pudo autenticar con el servidor SVN.

Estoy probando PDT y Subversivo, porque quiero AHORRAR tiempo, no gastar más en diferentes problemas con un complemento.

Desinstalé Subversive, instalé Subclipse y me conecté así.

Ahórrese el tiempo y la molestia, vaya a Subclipse desde el principio.

También he usado ambos. Tuve el problema de que tenía alrededor de 150 proyectos en mi espacio de trabajo, y Subversive tardaría muchísimo tiempo en seleccionar todos los complementos y decir “sincronizar repository”. La interfaz de usuario se congelaría por un tiempo extremadamente largo. Encuentro que Subclipse es más estable.

De todos modos, combino mucho las herramientas. Para algunas tareas, como verificar twigs enteras, prefiero la línea de comando. Para otros uso TortoiseSVN . Uso Subclipse principalmente para ver el historial y ejecutar comparaciones directamente en la herramienta, y ocasionalmente para comparar (prefiero Beyond Compare para eso).