59 votes

Que ne devrait PAS être sous contrôle de source?

Il serait agréable d'avoir une plus ou moins complète de la liste de plus de ce que les fichiers et/ou répertoires qui ne le sont pas (dans la plupart des cas) être sous contrôle de code source. Que pensez-vous devrait être exclu?

Suggestion pour l'instant:

En général

  • Les fichiers de configuration contenant des informations sensibles (mots de passe, les clés privées, etc.)
  • Les pouces.db, .DS_Store et de bureau.ini
  • L'éditeur de sauvegardes: *~ (emacs)
  • Les fichiers générés (par exemple DoxyGen sortie)

C#

  • bin\*
  • obj\*
  • *.exe

Visual Studio

  • *.suo
  • *.pne
  • *.l'utilisateur
  • *.aps
  • *.cachefile
  • *.sauvegarde
  • _UpgradeReport_Files

Java

  • *.classe

Eclipse

Je ne sais pas, et c'est ce que je suis à la recherche pour l'instant :-)

Python

  • *.pyc

Les fichiers temporaires - .*.sw? - *~

43voto

Corey D Points 2676

Tout ce qui est généré. Binaire, code binaire, code/documents générés à partir de données XML.

De mes commentateurs, exclure:

  • Rien générés par la construction, y compris le code de la documentation (doxygen, javadoc, pydoc, etc.)

Mais incluent:

  • 3ème partie les bibliothèques que vous n'avez pas la source OU de ne pas construire.

FWIW, à mon travail pour un très gros projet, nous avons les éléments suivants sous ClearCase:

  • Tous les code d'origine
  • Qt source ET construit debug/release
  • (Terriblement obsolète) spécifications

Nous n'avons pas intégré les modules de notre logiciel. Un binaire complet est distribué à toutes les deux semaines avec les dernières mises à jour.

18voto

pgb Points 17316

Fichiers spécifiques au système d'exploitation, générés par leurs navigateurs tels que Thumbs.db et .DS_Store

15voto

apparat Points 1353

Certains autres fichiers / dossiers typiques de Visual Studio sont

 *.cachefile 
*.backup 
_UpgradeReport_Files
 

Ma tortue globale ignorer motif par exemple ressemble à ceci

 bin obj *.suo *.user *.cachefile *.backup _UpgradeReport_Files
 

11voto

pmeerw Points 285

les fichiers construits ne doivent pas être archivés

7voto

Jonathon Watney Points 2318

Comme Corey D a dit tout ce qui est généré, spécialement tout ce qui est généré par le processus de construction et de développement de l'environnement sont de bons candidats. Par exemple:

  • Les fichiers binaires et les installateurs
  • Bytecode et archives
  • Les Documents générés à partir de données XML et le code
  • Le Code généré par des modèles et des générateurs de code
  • IDE fichiers de paramètres
  • Les fichiers de sauvegarde générés par votre IDE ou de l'éditeur

Quelques exceptions à la ci-dessus pourrait être:

  • Images et vidéo
  • Bibliothèques tierces
  • L'équipe IDE fichiers de paramètres

Prendre des bibliothèques tierces, si vous avez besoin d'expédier ou de votre construction dépend d'un tiers de la bibliothèque, il n'est pas déraisonnable de mettre sous contrôle de code source, surtout si vous n'avez pas la source. Aussi prendre en considération certains systèmes de contrôle de source ne sont pas très efficaces en matière de stockage des blobs binaires et vous ne serez probablement pas en mesure de prendre avantage des systèmes de diff outils pour ces fichiers.

Paul fait également un grand commentaire à propos de fichiers générés et vous devriez vérifier sa réponse:

En gros, si vous ne pouvez pas raisonnablement s'attendre à un développeur pour avoir le la version exacte de l'outil dont ils ont besoin, il y a un cas de mettre le les fichiers générés dans le contrôle de version.

Avec tout cela étant dit, finalement, vous aurez besoin de considérer ce que vous mettez sous contrôle de code source sur une base de cas par cas. La définition d'un dur liste de ce qui et de quoi ne pas mettre de sous, il ne fonctionnera que pour certains et seulement probablement depuis si longtemps. Et bien entendu, plus les fichiers que vous ajoutez à la source de contrôle, plus il faudra mettre à jour votre copie de travail.

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