web-dev-qa-db-fra.com

Ignorer .classpath et .project de Git

Je n'arrête pas de dire aux autres et à moi-même de ne pas utiliser les fichiers .classpath et .project et d'utiliser Maven.

D'une manière ou d'une autre, les développeurs Junior ignorent toujours certaines règles et valident ces fichiers. Il est donc préférable de disposer de tels fichiers pour les débutants qui peuvent sauter et commencer à utiliser le code.

Maintenant, à partir de moi, je voudrais essayer/faire quelque chose. Lorsque je clonerai le référentiel, j'obtiendrai des fichiers .classpath et .project, qui seront certainement modifiés dans mon système.

Mais je veux qu’ils ne soient pas engagés et qu’ils soient toujours ignorés lors de la synchronisation avec Git. Pour que mes modifications dans le système local ne gâchent pas Git et Git, les modifications de ces fichiers ne gâchent pas mes fichiers locaux.

Comment puis-je y arriver? Quoi qu'il en soit, marquer ces fichiers pour qu'ils soient ignorés de cette manière?

65
Reddy

Si la .project et .classpath sont déjà validés, ils doivent être supprimés de l’index (mais pas du disque)

git rm --cached .project
git rm --cached .classpath

Puis le .gitignore fonctionnerait (et ce fichier peut être ajouté et partagé via des clones).
Par exemple, this gitignore.io/api/Eclipse le fichier fonctionnera alors, ce qui inclut:

# Eclipse Core      
.project

# JDT-specific (Eclipse Java Development Tools)     
.classpath

Notez que vous pouvez utiliser un " répertoire de modèles " lors du clonage (assurez-vous que vos utilisateurs ont une variable d'environnement $GIT_TEMPLATE_DIR défini sur un dossier partagé accessible à tous).
Ce dossier de modèle peut contenir un info/exclude _ fichier, avec ignorer les règles que vous souhaitez appliquer à tous repos, y compris les nouvelles (git init) que tout utilisateur utiliserait.

99
VonC

Ajoutez les lignes ci-dessous dans .gitignore et placez le fichier dans le dossier de votre projet.

/target/
/.classpath
/*.project
/.settings
/*.springBeans
10
Viyaan Jhiingade

Utilisez un fichier .gitignore. Cela vous permet d'ignorer certains fichiers. http://git-scm.com/docs/gitignore

Voici un exemple d'Eclipse, qui gère votre classpath et vos fichiers de projet: https://github.com/github/gitignore/blob/master/Global/Eclipse.gitignore

2
olan