Je viens de passer à VS2015 et je rencontre un problème que je n'ai jamais vu auparavant. En utilisant une solution existante sous contrôle de source, je suis en mesure de modifier des fichiers et ils sont récupérés en tant que modifications en attente prêtes à être enregistrées dans TFS.
Cependant, j'ajoute un nouveau fichier (Test.cs comme exemple dans cette capture d'écran), il n'est pas repris comme un nouveau fichier.
Je dois faire un clic droit dessus et cliquer sur "Ajouter des fichiers au contrôle de code source"
Cela n'a jamais été un problème auparavant. J'aimerais que tout ce que j'ajoute en tant que nouveau fichier soit récupéré en tant que modification en attente. Comment puis-je y arriver? Je n'ai jamais vu cela auparavant dans les versions précédentes de Visual Studio.
Je peux confirmer que ce problème est le même sur une autre machine. De plus, le nouveau fichier n'est pas non plus récupéré dans "Promouvoir les changements de candidats".
Si je clique ensuite sur "Ajouter un fichier au contrôle de code source", je reçois ce message.
"Le fichier sélectionné est ignoré. Vous l'ajoutez quand même au contrôle de code source?"
Mon fichier .tfignore a juste une directive pour ignorer les paquets, donc je ne pense pas que ce fichier soit le problème.
Comment puis-je remettre mes paramètres sur la bonne voie?
MISE À JOUR:
J'ai remarqué que cela n'arrive qu'à la branche "Release" de mon espace de travail. Toutes les autres branches se comportent comme prévu. De plus, si je prends ensuite une branche "Release" et l'appelle "Release1", le problème disparaît complètement!
Les branches portant le nom spécifique "Release" prennent-elles des fonctionnalités spéciales dans TFS?
Les dossiers appelés Release et leur contenu sont automatiquement exclus de TFS (avec Debug et de nombreux types de fichiers). Vous pouvez remplacer cela pour des dossiers particuliers en créant un fichier .tfignore, comme détaillé dans la section "Personnaliser les fichiers qui sont ignorés par le contrôle de version" de cette section lien
Personnaliser les fichiers ignorés par le contrôle de version
Par défaut, certains types de fichiers (par exemple, les fichiers .dll) sont ignorés par le contrôle de version. Par conséquent:
Lorsque vous ajoutez des fichiers ignorés à des dossiers mappés dans un espace de travail local, ils n'apparaissent pas dans la page Modifications en attente dans Team Explorer.
Lorsque vous essayez d'ajouter des fichiers ignorés à l'aide de la boîte de dialogue Ajouter au contrôle de code source (par exemple en les faisant glisser dans l'explorateur de contrôle de code source), ils apparaissent automatiquement dans l'onglet Éléments exclus.
Vous pouvez configurer les types de fichiers à ignorer en plaçant le fichier texte appelé .tfignore dans le dossier où vous souhaitez appliquer les règles. Les effets du fichier .tfignore sont récursifs. Cependant, vous pouvez créer des fichiers .tfignore dans des sous-dossiers pour remplacer les effets d'un fichier .tfignore dans un dossier parent.
Règles de fichier .tfignore
Les règles suivantes s'appliquent à un fichier .tfignore:
# commence une ligne de commentaire
Les * et? les caractères génériques sont pris en charge.
Une spécification de fichier est récursive sauf si elle est préfixée par le caractère \.
! annule une spécification de fichier (les fichiers qui correspondent au modèle ne sont pas ignorés)
Exemple de fichier .tfignore
Ignorer les fichiers .cpp dans le sous-dossier ProjA et tous ses sous-dossiers
ProjA * .cppIgnorer les fichiers .txt de ce dossier
*.SMSIgnorer les fichiers .xml dans ce dossier et tous ses sous-dossiers
*. xmlIgnorer tous les fichiers du sous-dossier Temp
\TempN'ignorez pas les fichiers .dll dans ce dossier ni dans aucun de ses sous-dossiers
! *. dll
Nous rencontrions également ce problème, mais dans notre cas, c'était parce que nous avions des dossiers qui se terminaient par ".Lib". Compris à partir de cette SO question: Visual Studio 2015. Fichiers non ajoutés à TFS
Nous avons le même problème à cause d'une branche appelée "Release". Mais le problème ne concerne que Visual Studio 2015 Update 3. À l'aide de Visual Studio 2015 Update 2, tout va bien. Visual Studio Update 3 doit donc avoir changé son comportement. Il serait utile de revenir à son ancien comportement.
Ajoutez un fichier .tfignore au dossier de publication contenant les extensions que vous ne souhaitez pas ignorer:
!*.vb
J'ai essayé d'ajouter ceci au .tfignore qui existait dans mon dossier de solution et cela n'a pas aidé. Cela n'a fonctionné que lorsque j'en ai ajouté un au dossier de version parent.
..\Release
..\Release\.tfignore <-- this one
..\Release\SolutionA\
..\Release\SolutionA\.tfignore