L'alignement de l'assemblée des numéros de version de TFS Buildnumber
Je me demande si il y a un moyen de synchroniser les numéros de version (20080213.1) sans l'aide de la BuildNumberOverrideTarget où je générer mon propre numéro de build? En gros, je veux utiliser la valeur par défaut/built-dans tfs buildnumber générateur, mais souhaitez accéder à aligner mes versions de montage avec elle. Est-ce possible et est-il un moyen judicieux de faire de cette façon?
OriginalL'auteur Fadeproof | 2009-02-13
Vous devez vous connecter pour publier un commentaire.
Ce que vous demandez est très sensible et il y a un certain nombre de moyens pour y parvenir.
Personnellement, quand je fais ce que je n'aime pas à vérifier les fichiers de contrôle de version qui ont le serveur de build numéro généré à eux qu'il présente trop de maux de tête lors de la fusion de code dans toutes les branches, mais j'aime aussi connu numéro de la version à être utilisée lorsqu'un développeur est une station de travail construire vs un bon serveur de build dérivé de l'assemblée pour le rendre vraiment facile de les distinguer.
Pour plus d'informations sur la façon dont je tiens à le faire, jetez un oeil à la Build TFS Recettes wiki:
ou mon blog sur le thème
Espère que ça aide,
Martin.
Pour les développeurs, pensez-vous que vous utilisez le VS construire ou vous utilisez les scripts de construction que les développeurs doivent utiliser sur leurs postes de travail?
Pour les développeurs, je n'utilise que le VS construire. J'utilise parfois du poste du Développeur construit à l'aide de la TeamBuild script - toutefois VS construit tendance à être en mesure de faire le travail à 90% du temps et rend les choses beaucoup plus simple. En réponse à votre commentaire précédent, j'ai, en effet, utiliser 1.0.0.0 dans le AssemblyInfo fichiers.
OriginalL'auteur Martin Woodward
Oui, vous pouvez. À un certain point, peut-être au AfterGet, vous pouvez utiliser le BuildNumber et de créer une tâche de mise à jour de la AssemblyInfo.cs fichiers dans votre code source.
Nous avons accroché dans AfterGet et a causé notre objectif d'être à charge:
Notre VersionAssemblies Cible tire toutes les AssemblyInfo.cs des fichiers à partir de $(SolutionRoot):
vérifie:
modifie et remplace la version du fichier avec l' $(BuildNumber):
et vérifie ensuite les fichiers dans:
Pour le remplacement des versions des fichiers, j'utilise le Fichier.Remplacer tâche qui est livré avec Microsoft La DDC tâches sur CodePlex.
Notez également que si vous avez une version qui est déclenché sur un checkin, lors de la vérification dans le AssemblyInfo.cs des fichiers, assurez-vous que le commentaire comprend $(NoCICheckinComment), car cela provoque des TFS de ne pas déclencher une autre build, sinon vous finirez dans une infinité de construire boucle.
Vous pourriez écrire une tâche personnalisée à dépouiller le MyBuildDefinition_ partie et la bande.
OriginalL'auteur Ray Booysen