2010-09-07 3 views
1

J'ai ces derniers dans le proj/.hgignore:Pour Mercurial (Hg), pourquoi le fichier .hgignore ne peut-il être ignoré?

syntax: glob 
log/* 
*~ 
*.orig 
dump/* 
*.hgignore 
.hgignore 
tmp/* 

mais pour une raison quelconque, quand je fais un hg st ou hg com, le fichier .hgignore apparaît toujours à modifier ou à engager. Donc, le .hgignore ne peut pas être ignoré? Il y a peut-être des détails dans mon dossier que mon équipe ne voulait pas ignorer, mais je le fais. Donc je ne veux pas commettre ce fichier.

+3

Le fichier .hgignore peut être ignoré, cependant, tout fichier déjà validé ne peut pas être ignoré. Pour que cela fonctionne, vous devez supprimer le fichier .hgignore du référentiel. Suivez la réponse de Paul McMillan, cela ressemble à ce que vous voulez. –

Répondre

5

Chris l'a dans le commentaire: vous avez probablement déjà ajouté votre fichier .hgignore, et un add remplace le .hgignore. Vous devez hg forget .hgignore et hg commit et alors vous trouverez votre fichier est ignoré. Cela dit, la plupart des gens mettent le fichier .hgignore dans le repo pour une raison - de sorte que la prochaine personne à cloner ne commette pas accidentellement tous leurs fichiers journaux/temporaires.

+0

merci. cela signifie que je dois supprimer .hgignore du projet pour qu'il soit ignoré? Donc, si de cette façon, il n'y a vraiment aucun moyen pratique d'avoir ma propre addition de noms de fichiers au .hgignore une fois qu'il est commis, et il est bon d'être engagé pour d'autres personnes pour avoir un ensemble de noms de fichiers de base ... que diriez-vous .hgignore.local afin que nous puissions avoir nos propres ajouts? –

+0

Le lien dans ma réponse est fonctionnellement équivalent à ce que vous demandez. –

+0

Vous avez raison, mais c'est seulement nécessaire si vous voulez que les choses soient ignorées pour tout le monde et que ce soit ignoré pour vous. Si vous voulez seulement des choses qui sont ignorées pour vous, vous pouvez les mettre dans .hgignore et ne jamais les ajouter/les valider, et cela prendra effet. Votre déclaration "Le fichier .hgignore global est nécessaire pour ignorer n'importe quoi, et donc vous ne pouvez pas l'exclure." est inexact - il fonctionne très bien pour mettre .hgignore et d'autres choses dans .hgignore et ne jamais le commettre. –

Questions connexes