subir repositorio rama proyecto crear conflictos compartir actualizar eclipse git egit jgit

rama - ¿Por qué no se recomienda tener una carpeta de proyectos de Eclipse como un repositorio Git?



resolver conflictos git eclipse (2)

Al compartir un proyecto como git e intentar crear la carpeta de proyectos de Eclipse como el repositorio de git, Eclipse dice que no se recomienda hacerlo y que debería estar fuera del área de trabajo de Eclipse.

¿Porqué es eso?


Desde las páginas de ayuda de Eclipse EGit ,

Probablemente no sea una buena idea convertir un proyecto en la carpeta raíz de su Repositorio

La razón es que nunca podrá agregar otro proyecto a este Repositorio, ya que el archivo .project ocupará la carpeta raíz; aún podría agregar proyectos como subcarpetas, pero se sabe que este tipo de anidamiento de proyectos causa muchos problemas por todas partes. Para agregar otro proyecto, tendría que mover el proyecto a una subcarpeta en el Repositorio y agregar el segundo proyecto como otra subcarpeta antes de poder confirmar este cambio.

Más información

Es una buena idea mantener su Repositorio fuera de su Área de trabajo de Eclipse

Hay varias razones para esto:

El nuevo repositorio considerará la estructura de carpetas completa del espacio de trabajo de Eclipse como contenido (potencial). Esto puede dar como resultado problemas de rendimiento, por ejemplo, al calcular los cambios antes de confirmar (que analizará la carpeta completa .metadata, por ejemplo); la mayoría de las veces, el espacio de trabajo contendrá carpetas muertas (por ejemplo, proyectos eliminados) que, semánticamente, no son relevantes para EGit pero no pueden excluirse fácilmente.

La carpeta de metadatos (.git-) será un elemento secundario del área de trabajo de Eclipse. No está claro si esto podría causar recorridos de carpetas no deseados por Eclipse.

Puede destruir fácilmente su repositorio destruyendo su espacio de trabajo de Eclipse


Si bien estoy de acuerdo en mantener el repositorio fuera del área de trabajo de Eclipse, y todavía haría un repositorio git dentro de un directorio raíz del proyecto Eclipse (como en esta respuesta ).

A menos que su programa esté compuesto de muchos pequeños proyectos interdependientes, limitaría un repositorio de git a un proyecto de Eclipse.
Un git repo se trata de registrar el contenido de una estructura de árbol, y si ese árbol representa un proyecto, es más fácil de administrar, etiquetar, ramificar, fusionar (como un conjunto coherente de archivos ).
Si representa varios proyectos, ya no está seguro de lo que representa una etiqueta como "1.0" para cada uno de los proyectos en ese repositorio de Git.

Además, me gusta agregar el .project , .classpath y .settings al repositorio de Git (como " ¿El git excluye los archivos de proyecto de eclipse de un nuevo repositorio de forma predeterminada? ")