2010-04-06 16 views
80

¿Cuál debería ser el contenido del archivo .gitignore para un proyecto de Java en netbeans?¿qué debería estar en el archivo .gitignore para un proyecto de netbeans java?

+0

Depende del sistema operativo que está desarrollando demasiado, la mayoría de los desarrolladores de Mac incluyen '.DS_Store' ya que esto es generado por OS X, en la mayoría de los directorios, y es superfluo a su aplicación. –

+0

I un desarrollo en Windows. En cuestión me refiero a ciertos archivos como .DS_Store. Por ejemplo, ¿debería incluir la carpeta de compilación en .gitignore? – thuaso

+2

Esto es, más o menos, un duplicado de http://stackoverflow.com/questions/1267403/which-netbeans-projects-files-should-go-into-source-control –

Respuesta

57

Hay un buen número de archivos que probablemente no necesite convertir en git, ya que están compilados, son generados por NB o contienen información específica del entorno.

Si crea un proyecto que utiliza Ant como el mecanismo de acumulación, por lo general terminan con un árbol de directorios que se ve así ...

project-root-directory/ 
+ nbproject/ 
    build-impl.xml 
    + private/ 
    + project.properties 
    + project.xml 
+ src/ 
+ test/ 
+ build.xml 

Después de hacer una construcción .. habrá una par de directorios adicionales

project-root-directory/ 
+ build/ 
+ dist/ 
+ nbproject/ 
    build-impl.xml 
    + private/ 
    + project.properties 
    + project.xml 
+ src/ 
+ test/ 
+ build.xml 

probablemente debería poner la acumulación, dist y directorios privados nbproject/(y sus hijos) en su .gitignore.

Si quiere ser muy agresivo al excluir archivos, puede considerar excluir todos los archivos que aparecen en nbproject EXCEPTO project.properties y project.xml. Los otros archivos en el directorio nbproject son regenerados por NetBeans cuando se abre el proyecto.

+3

[Se hizo una pregunta muy similar al año anterior] (http://stackoverflow.com/questions/1267403/which-netbeans-projects-files-should-go-into-source-control/1267580#1267580) y la mejor respuesta apuntaba a un [Artículo de Knowledge Base de NetBeans] (http://netbeans.org/kb/docs/java/import-eclipse.html#versioning) que da una respuesta similar a la tuya. –

+0

@DavidJames - enlace roto ahora –

+0

@JasonS Mi primer enlace sigue siendo válido; No puedo editar el segundo enlace. Más contexto en [¿Hay alguna forma de arreglar enlaces rotos en los comentarios? ¿Pueden los mods editar comentarios?] (Http://meta.stackexchange.com/questions/135647/is-there-a-way-to-fix-broken-links-in-comments-can-the-mods-edit- comentarios) –

1

No debe haber archivos específicos de NetBeans en su .gitignore. El archivo .gitignore es específico del proyecto pero compartido entre desarrolladores, IOW solo debe haber elementos que sean comunes para todos los desarrolladores que trabajen con el código (incluidos los que usan OSX, Linux en lugar de Windows y Eclipse, IntelliJ o Notepad como editores) y que son específicos para el proyecto.

Si hay algunos archivos que le gustaría hacer caso basado en su entorno específico (como por ejemplo, Windows Thumbs.db y desktop archivos o NeBeans nbproject directorios) que debe hacer eso en su lista de ignorados global, no en el proyecto específico .gitignore   – si solo porque no necesita agregarlos a cada uno de sus proyectos individualmente.

Si los archivos que desea ignorar son específicos de su entorno y específicos del proyecto, colóquelos en el repositorio .git/info/exclude.

+2

¿Por qué usar .git/info/exclude en lugar de los proyectos .gitignore? ¿Cuál es la ventaja/desventaja si se coloca en .gitignore? –

+2

No estoy de acuerdo; no perjudica a un usuario de IntelliJ si un usuario de Eclipse verifica en los archivos de proyecto apropiados (por ejemplo, no autogenerados), o viceversa. De hecho, puede ayudar cuando un miembro del equipo del proyecto necesita trabajar con ese otro IDE. (Esto puede ocurrir durante la solución de problemas o la programación de pares.) –

+0

@Andrew Burns La diferencia entre .gitignore y .git/info/exclude es que la primera se versionará (git rastrea los cambios), mientras que la segunda no. Uso .gitignore porque a veces cambio lo que se ignora y lo quiero asociado a la versión. Me gustó t [ejemplos de archivos .gitignore aquí] (http://sujee.net/tech/articles/gitignore/). – Ivin

66
# NetBeans specifiC# 
nbproject/private/ 
build/ 
nbbuild/ 
dist/ 
nbdist/ 
nbactions.xml 
nb-configuration.xml 

# Class Files # 
*.class 

# Package Files # 
*.jar 
*.war 
*.ear 
+1

Sólo una nota que este se alinea estrechamente con el NetBeans .gitignore alojados en GitHub: https://github.com/github/gitignore/blob/master/Global/NetBeans.gitignore – Steven

+1

NetBeans de GitHub .gitignore permite que los archivos .jar que se incluirán en el repositorio. Dudo que sea la mejor práctica, pero me hace la vida más fácil. –

+0

... y, como el '.gitignore' de GitHub para NetBeans, no es del todo correcto. Ver http://stackoverflow.com/q/24139478/421049. –

Cuestiones relacionadas