Il y a un fichier auquel j'ai toujours apporté des modifications, mais que je ne veux jamais être archivé. J'aimerais que TFS m'empêche de l'archiver ou de valider les modifications. Comment puis-je configurer TFS pour ce faire?
Détails: Il y a un autre développeur sur le projet qui a archivé un mauvais code que je préfère commenter sur ma machine locale. Puisqu'ils sont clients, je préfère garder cet exercice technique plutôt que d'en faire un exercice politique.
L'une des fonctionnalités sous-évaluées de TFS est cloaking . Comme le ignore
de SVN, le masquage vous permettra d'ignorer un certain dossier ou certains fichiers.
Le masquage d'un dossier est facile: faites un clic droit sur un dossier dans l'explorateur de contrôle de source et sélectionnez Cloak
L'interface utilisateur n'expose pas le masquage sur un seul fichier, mais parfois vous pouvez vouloir masquer un certain fichier comme app.config
.
Accédez à File
> Source Control
> Workspaces
Sélectionnez votre espace de travail et cliquez sur Edit
.
Sous les dossiers de travail, et une nouvelle entrée avec le statut Cloaked
et entrez le chemin d'accès complet au serveur du fichier que vous souhaitez masquer. (Par exemple.: $/MyTeamProject/Dev/Src/SomeProject/app.config
)
Dans Local Workspace , utilisez, vous pouvez utiliser .tfignore
fichier (l'équivalent de .gitignore
pour Git)
.tfignore file example
######################################
# Ignore .cpp files in the ProjA sub-folder and all its subfolders
ProjA\*.cpp
#
# Ignore .txt files in this folder
\*.txt
#
# Ignore .xml files in this folder and all its sub-folders
*.xml
#
# Ignore all files in the Temp sub-folder
\Temp
#
# Do not ignore .dll files in this folder nor in any of its sub-folders
!*.dll
Une autre approche consiste à refuser l'enregistrement sur le fichier (nécessite des privilèges administratifs):
Cliquez avec le bouton droit sur le fichier> cliquez sur Properties
> Security
Ajoutez votre utilisateur et marquez Deny
sur le Check In
autorisation.
Pour TFS 2012, utilisez simplement le fichier . Tfignore .
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.
Visual Studio 2013 (et 2012)
Cette fonctionnalité est disponible en sélectionnant le (s) fichier (s) et en allant sur:
File > Source Control > Advanced > Exclude ... from Source Control
Vous pouvez simplement exclure le fichier du contrôle de code source
1. Sélectionnez le fichier dans l'Explorateur de solutions
2. Allez dans Fichier -> Contrôle de source -> Avancé
et le voici
Il y a 2 façons.
Je n'aime aucune des deux options dans TFS/VS 2010, donc j'ai en fait évité de le faire (j'avais l'habitude d'avoir un grand "ignore-on-commit" lorsque nous utilisions SVN). Maintenant, j'utilise VS11 Beta, la liste Exclue fait exactement ce que je veux, je déplace quelque chose vers elle et elle y reste, et je peux facilement mettre d'autres modifications sur et hors de cette liste et ne pas archiver ce fichier.
Une autre option consiste à utiliser une politique d'enregistrement personnalisée. Vous pouvez créer le vôtre ou utiliser Politique de modèles interdits à partir du TFS 2010 Power Tools . Bien sûr, vous devez être un administrateur TFS pour l'installer et ce n'est peut-être pas la chose que vous souhaitez dans votre situation. De plus, toutes les politiques d'enregistrement peuvent être remplacées.
si vous utilisez le type d'espace de travail "Local", c'est nouveau dans TFS 2012 - vos fichiers contrôlés par la source ne sont pas du tout définis en "lecture seule". Mais dans ce cas, peu importe où vous les modifiez, ils sont vus par TFS comme modifiés et inclus dans les modifications en attente. Ce serait bien d'avoir une option comme "auto-exclure" des modifications en attente par défaut. Et ne les incluez que lorsque vous le souhaitez.
Les dossiers cachés ne sont jamais détectés comme un changement par TFS utilisez cette fonctionnalité si vous utilisez VS2010. Le dossier dont vous ne voulez pas faire partie de TFS Marquez-le comme masqué.