176 votes

Meilleur modèle général d'ignorance SVN ?

Quel est le meilleur (ou le meilleur possible) modèle général d'ignorance SVN à utiliser ?

Il existe un certain nombre de fichiers spécifiques à l'IDE, à l'éditeur, au compilateur, au plug-in, à la plate-forme, etc. et certains types de fichiers qui se "chevauchent" (c'est-à-dire qui sont souhaitables pour certains types de projets et pas pour d'autres).

Il existe cependant un grand nombre de types de fichiers que vous ne voulez tout simplement pas inclure automatiquement dans le contrôle de la source, quelles que soient les spécificités de votre environnement de développement.

La réponse à cette question constituerait un bon point de départ pour tout projet - il suffirait d'ajouter les quelques éléments spécifiques à l'environnement dont ils ont besoin. Elle pourrait également être adaptée à d'autres systèmes de contrôle de version (VCS).

0 votes

Bonjour Zach, j'ai lu votre article : zachburlingame.com/2011/03/ et j'ai quelques questions... Y a-t-il un moyen de vous joindre à ce sujet ? Merci pour votre temps...P.S : Je n'ai pas trouvé d'autre moyen de vous joindre que par ce commentaire, désolé pour le dérangement.

195voto

Zach Burlingame Points 7232

Je vais ajouter mon grain de sel à cette question :

J'utilise le modèle d'ignorance SVN suivant avec TortoiseSVN et Subversion CLI pour les projets natifs C++, C#/VB.NET, et PERL sur les plateformes Windows et Linux. Cela fonctionne bien pour moi !

Formaté pour le copier-coller :

\*.o \*.lo \*.la #\*# .\*.rej \*.rej .\*~ \*~ .#\* .DS\_Store thumbs.db Thumbs.db \*.bak \*.class \*.exe \*.dll \*.mine \*.obj \*.ncb \*.lib \*.log \*.idb \*.pdb \*.ilk \*.msi\* .res \*.pch \*.suo \*.exp \*.\*~ \*.~\* ~\*.\* cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj \*.csproj.user \*.user \*.generated.cs

Formaté pour la lisibilité :

\*.o \*.lo \*.la #\*# .\*.rej \*.rej
.\*~ \*~ .#\* .DS\_Store thumbs.db 
Thumbs.db \*.bak \*.class \*.exe \*.dll
\*.mine \*.obj \*.ncb \*.lib \*.log 
\*.idb \*.pdb \*.ilk \*.msi\* .res \*.pch \*.suo 
\*.exp \*.\*~ \*.~\* ~\*.\* cvs  CVS .CVS .cvs  
release Release debug Debug
ignore Ignore bin Bin obj  Obj
\*.csproj.user \*.user
\*.generated.cs

0 votes

@blorgbeard - J'annule vos changements de formatage car je pense qu'il est préférable d'avoir tout sur une seule ligne pour le copier/coller dans le fichier de configuration SVN (qui n'accepte pas les entrées sur plusieurs lignes).

3 votes

De plus, si vous faites WPF *.g.vb *.g.cs *.baml *.GenerateResource.Cache *.cache

6 votes

Est-ce que *.dll est nécessaire car il peut arriver que les assemblages de référence doivent être commités aussi dans le dépôt ?

44voto

En me basant sur le modèle de Burly, j'ai ajouté ReSharper à la liste des ignorés.

Formaté pour le copier-coller :

*.o *.lo .la ## .*.rej .rej .~ ~ .# .DS_Store thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk .msi .res *.pch *.suo *.exp ~. cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj *.csproj.user *.user _ReSharper.* *.resharper.user

Formaté pour la lisibilité :

*.o *.lo .la ## .*.rej .rej .~ ~ .# .DS_Store thumbs.db Thumbs.db *.bak
*.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk .msi .res *.pch *.suo *.exp ~. cvs
CVS .CVS .cvs release Release debug
Debug ignore Ignore bin Bin obj Obj
*.csproj.user *.user _ReSharper.* *.resharper.user

1 votes

Je l'utilise également avec : _ReSharper.*

1 votes

Notez que le commentaire de Dve a été incorporé dans le modèle ci-dessus. Il n'est pas nécessaire de l'ajouter à nouveau.

35voto

Dima Pasko Points 837

Mon modèle d'ignorance pour Visual Studio :

\*/bin \*/obj \*/Release \*/Debug \*.suo \*.err \*.log \*.obj \*.bin \*.dll \*.exe \*.LOG \*.user \*.pdb \[tT\]emp \[tT\]empPE Ankh.Load thumbs.db \*.resharper \*.vspscc \*.vsssccc \*.scc \*/\_ReSharper\* \*/\_ReSharper.\* bin obj \*.resharperoptions \*.db \*.bak \*\_ReSharper\* \*.snk logs output TestResults \*.crunchsolution.\* \*.crunchproject.\*

Formaté pour la lisibilité

\*/bin \*/obj \*/Release \*/Debug \*.suo \*.err \*.log \*.obj \*.bin \*.dll \*.exe 
\*.LOG \*.user \*.pdb \[tT\]emp \[tT\]empPE Ankh.Load thumbs.db \*.resharper 
\*.vspscc \*.vsssccc \*.scc \*/\_ReSharper\* \*/\_ReSharper.\* bin obj 
\*.resharperoptions \*.db \*.bak \*\_ReSharper\* \*.snk logs output TestResults 
\*.crunchsolution.\* \*.crunchproject.\*

16voto

petr k. Points 4890

Chaque fois que je tombe sur un fichier que je ne veux généralement pas dans le référentiel, je mets à jour le modèle. Je crois qu'il n'y a pas de "meilleur" modèle - il y a toujours un modèle de base. dépend de la langue et de l'environnement que vous développez.

De plus, il est peu probable que vous pensiez à tous les types de fichiers "ignorables" possibles - vous rencontrerez toujours un type de fichier que vous aurez simplement oublié d'inclure. C'est pourquoi la mise à jour du modèle au fur et à mesure fonctionne le mieux.

2 votes

Je suis d'accord pour dire qu'il n'y a pas de "meilleur" modèle dans le sens absolu, c'est pourquoi j'ai ajouté le (ou aussi bon que possible). Vous avez raison, vous ne pourrez pas tous les énumérer et cela dépend de la langue et de l'environnement, ce que j'ai également indiqué. Cependant, il y en a un grand nombre que vous peut d'un coup de baguette magique.

1 votes

De plus, si l'ajout de ces éléments au fur et à mesure fonctionne bien pour les environnements à un seul développeur, lorsque plusieurs développeurs travaillent sur un projet, il est souhaitable de disposer d'un modèle commun pour ignorer le projet. Vous voulez avoir à le mettre à jour le moins souvent possible, donc vous voulez en éliminer le plus possible dès le départ.

0 votes

Bien sûr, le modèle habituel de *.bin *.bak *.pdb *.suo etc etc doit être défini au départ, je suis d'accord. Mais une fois que vous avez défini les propriétés d'ignorance sur un dossier de référentiel, il devient effectivement partagé - bien que je sois conscient que ce n'est pas exactement ce que vous vouliez dire.

11voto

harpo Points 17399

Les utilisateurs de Windows pourraient vouloir ajouter desktop.ini et thumbs.db.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X