2010-09-09 6 views
1

Il semble que lorsque TFS effectue une génération, crée le répertoire de génération et extrait les fichiers de la source, il marque tous les fichiers source en lecture seule. Cela provoque un problème avec une solution BizTalk que nous avons, il semble qu'au moment de la construction, biztalk génère/édite une classe cs pour les fichiers de mapping, et c'est le même type de fichier qui reçoit une exception d'accès non autorisée. marqué comme en lecture seule. Mais pour la vie de moi, et ne peux pas comprendre comment changer ce comportement du TFS. Des idées?Fichiers marqués comme étant en lecture seule pendant la génération

Répondre

5

Les fichiers sont marqués en lecture seule, car ils obtiennent une dernière version de TFS. Si BizTalk génère un fichier pendant la compilation, vous ne pouvez pas inclure ce fichier dans le contrôle de code source, ou vous pouvez supprimer l'indicateur en lecture seule de ce fichier.

Vous pouvez supprimer l'indicateur dans TFS 2010 en modifiant le modèle de processus de construction et ajouter une activité InvokeProcess pour exécuter la commande attrib -r.

Pour plus d'informations comment ajouter le InvokeProcess au modèle de processus de construction voir http://www.ewaldhofman.nl/post/2010/04/27/Customize-Team-Build-2010-e28093-Part-2-Add-arguments-and-variables.aspx

+0

J'utilise TFS2013 mise à jour 4 et VS2013 Update4. J'utilise un modèle de construction DefaultTemplate.xaml inchangé. Je n'ai aucun fichier .xsd.cs archivé. Mon expérience est que l'agent de construction TFS marque le dossier en lecture seule, ce qui empêche la création de xsd.cs dans le cadre de la construction, ce qui provoque l'échec de la construction. Si je supprime l'indicateur en lecture seule du dossier, je suis en mesure d'exécuter manuellement une génération réussie sur le serveur de génération, mais cet indicateur est ajouté lors de la génération automatique suivante. –

1

Ne pas vérifier dans les fichiers .cs dans contrôle de code source pour un projet biztalk. Accédez à ces fichiers dans le contrôle de code source et supprimez-les.

0

Dans mon cas, j'ai vérifié mes fichiers locaux et ils étaient avec attribut de lecture seule, alors j'ai enlevé l'attribut localement, check-in à nouveau les fichiers et tout cela fonctionne:

1

Ce comportement est normal. Mais si vous avez des processus générés automatiquement (c'est-à-dire minification/grognement ...) qui nécessitent des fichiers inscriptibles, mettez à jour votre fichier projet et rendez chaque fichier accessible en écriture dans un processus de préconfiguration. Je sais que c'est en retard, mais j'espère que cela aidera quelqu'un à venir ici.

Référence de: https://benoit808.wordpress.com/2007/10/30/changing-a-files-attribute-from-a-msbuild-script/

Questions connexes