subversion oxygen instalar descargar configurar eclipse version-control svn

oxygen - svn connector eclipse



¿Qué archivos de Eclipse pertenecen al control de versiones? (8)

A algunos proyectos, como los que usan Maven, les gusta generar los archivos .project basados ​​en POM.

Dicho esto, aparte de eso, .metadata NO debe estar en control de origen. Su proyecto tendrá que determinar si Projectdir / .settings lo hace, en función de cómo planee administrar los estándares y demás. Si puede confiar honestamente en sus desarrolladores para configurar su entorno según el estándar, y no tiene que personalizar nada especial para ningún proyecto, entonces no necesita ponerlos. Yo, recomiendo configurar cada proyecto específicamente . Esto permite a los desarrolladores trabajar en múltiples proyectos en el mismo espacio de trabajo sin tener que cambiar la configuración predeterminada de un lado a otro, y hace que la configuración sea muy explícita, anulando cualquiera de sus configuraciones predeterminadas para que coincida con los estándares del proyecto.

La única parte difícil es asegurarse de que todos estén sincronizados. Pero en la mayoría de los casos puede copiar los archivos .settings de proyecto a proyecto. Si hay alguna que no desee específicamente en el control de origen, haga el equivalente de configurar svn: ignore para ellos, si su SCM lo admite.

¿Qué archivos de Eclipse son apropiados para poner bajo el control de la fuente, aparte de las fuentes obviamente?

En mi proyecto, específicamente, me pregunto acerca de:

.metadata / *
project-dir / .project
project-dir / .classpath
project-dir / .settings / *

Si hay alguno de estos para los cuales depende, explique sus pautas.


Actualmente estoy trabajando en un proyecto donde tenemos los archivos .project y .cproject bajo control de código fuente. La idea era que las configuraciones relacionadas con las rutas de la biblioteca y las directivas de enlace se propagarían en todo el equipo.

En la práctica, no ha funcionado muy bien, las fusiones casi siempre regresan en un estado conflictivo que debe ser desconcertado fuera del eclipse y luego el proyecto se cierra y se vuelve a abrir para que los cambios surtan efecto.

No recomendaría mantenerlos en control de código fuente.


Considerar:

.classpath .project .launch

Estos DEBERÍAN estar en el control de versiones siempre y cuando se limite a usar rutas relativas al proyecto. Esto permite que otros desarrolladores revisen el proyecto y comiencen a trabajar de inmediato sin tener que pasar por todo el dolor de la configuración que otros desarrolladores también pasaron.

Es posible que tenga la tentación de incluir .metadata en el control de versiones para que los desarrolladores de Eclipse puedan revisar un espacio de trabajo completo y tenerlo preconfigurado con todos los proyectos correctos, pero incluye una gran cantidad de información específica del usuario que cada vez que alguien trabaje en él cambio, por lo que aconsejaría NO INCLUIR .metadata. Es fácil construir un espacio de trabajo local solo importando todos los proyectos existentes de Eclipse.


El archivo .classpath es definitivamente un buen candidato para registrarse en scm, ya que configurarlo a mano puede ser una gran cantidad de trabajo y será difícil para los nuevos desarrolladores ingresar al proyecto. Es cierto que puede generarse a partir de otras fuentes, en cuyo caso se verificará en la otra fuente.

En cuanto a .settings, depende de la configuración. Esta es un área gris, pero algunas configuraciones son casi obligatorias y es conveniente poder revisar un proyecto, importarlo en Eclipse y tener todo configurado y listo.

En nuestro proyecto, por lo tanto, mantenemos una copia de la carpeta .settings llamada CVS.settings y tenemos una tarea ant para copiarla en .settings. Cuando obtiene el proyecto de CVS, llama a la tarea ant ''eclipsify'' para copiar la configuración predeterminada a la nueva carpeta .settings. Cuando configura los ajustes que necesitan todos los que desarrollan el proyecto, los combina de nuevo en la carpeta CVS.settings y los confirma en CVS. De esta manera, guardar las configuraciones en SCM se convierte en un proceso consciente. Se requiere que los desarrolladores fusionen esas configuraciones de nuevo en sus carpetas .settings de vez en cuando cuando se registran grandes cambios. Pero es un sistema simple que funciona sorprendentemente bien.


He pasado demasiadas horas configurando la configuración del espacio de trabajo de eclipse para nuevos colegas (y para mí). Lo que finalmente terminé haciendo fue copiar mis propios datos en la nueva máquina de desarrollo.

Si está trabajando en un equipo, creo que los siguientes son muy buenos candidatos para mantener bajo control de versiones:

  • JREs instalados y sus nombres
  • Entornos de tiempo de ejecución del servidor
  • Plantillas de editor de Java
  • Atajos de teclado de control de versiones
  • Configuraciones de complementos que no proporcionan configuraciones específicas del proyecto
  • Ajustes de Maven
  • Perspectivas Preconfiguradas
  • ...

Los metadatos no deben administrarse en el control de origen. Contienen principalmente datos relevantes para su espacio de trabajo.

La única excepción son los archivos .launch XML (definición del .launch ).

Se encuentran en

[eclipse-workspace]/.metadata/.plugins/org.eclipse.debug.core/.launches

Y deben copiarse en el directorio de su proyecto: cuando se actualice su proyecto, esas configuraciones se mostrarán en el cuadro de diálogo "Ejecutar configuración".

De esa manera, esos archivos de parámetros de lanzamiento también se pueden administrar en el SCM.

(Advertencia: desmarque la opción "Eliminar configuraciones cuando el recurso asociado se elimina" en el panel de preferencias Ejecutar / Iniciar / Iniciar configuración : Es común eliminar un proyecto de forma suave para importarlo nuevamente - para forzar una reinicialización de Metadatos de eclipse. ¡Pero esta opción, si está marcada, eliminará sus parámetros de inicio detallados!)

project-dir/.project project-dir/.classpath project-dir/.settings/*

debe estar en su SCM (especialmente .project y .classpath acuerdo con la documentación de Eclipse ).

El objetivo es que cualquiera pueda revisar / actualizar su espacio de trabajo de SCM e importar el proyecto de Eclipse al espacio de trabajo de Eclipse.

Para eso, desea usar solo rutas relativas en su .classpath, usando recursos vinculados .

Nota: es mejor si project-dir refiere a un directorio de proyecto "externo", no a un directorio creado en el espacio de trabajo de eclipse. De esa manera, las dos nociones (espacio de trabajo de eclipse vs. espacio de trabajo de SCM) están claramente separadas.

Como ipsquiggle menciona en el comentario, y como he aludido en una respuesta anterior , puede guardar la configuración de inicio como un archivo compartido directamente en el directorio de su proyecto. Toda la configuración de inicio puede luego ser versionada como los otros archivos de proyecto.

(De la publicación del blog Consejo: Crear y compartir configuraciones de lanzamiento desde KD)



Yo diría que ninguno de ellos. Lo más probable es que contengan información que sea relevante solo para su estación de trabajo (estoy pensando en rutas para bibliotecas y todo). Además, ¿qué pasa si alguien en tu equipo no está utilizando Eclipse?