83 votes

Comment ignorer les espaces blancs lors de la comparaison des sources dans Visual Studio / TFS ?

L'outil de comparaison dans Visual Source Safe (avant TFS) avait une case à cocher pratique pour sélectionner "Ignorer les espaces blancs".

Maintenant, nous utilisons TFS avec Visual Studio 2010, et la boîte de dialogue de comparaison n'a plus cette option. (Un oubli ridicule de la part de Microsoft !)

Est-il possible de contourner ce problème ?

4 votes

Vous devez être très prudent avec cette option car l'outil de fusion TFS ne peut pas faire la différence entre les espaces blancs dans le code et les espaces blancs dans une chaîne littérale. Une bien meilleure solution consiste à faire en sorte que toute l'équipe utilise les mêmes normes pour les espaces blancs dans le code.

5 votes

@Keith : La question de la littéralité est pratique à savoir - je ne l'avais pas remarqué. Cependant, les normes d'équipe ne sont pas toujours le problème. Si j'enveloppe un bloc de code dans une condition, il s'indentera automatiquement en provoquant des espaces blancs devant chaque ligne. Je ne veux vraiment voir que les déclarations If/End mises en évidence en tant que modifications, pas tout le bloc entre les deux.

1 votes

Je voudrais le contraire - tout ce qui se trouve dans le bloc est mis en évidence. Plus important encore, cela n'affecte pas seulement la mise en évidence de l'interface utilisateur, cela change également la façon dont l'outil effectue les fusions. Supposons que vous fusionnez avec la modification de quelqu'un - une autre If qui chevauche votre If bloc. Si vous ignorez les espaces blancs, vous obtiendrez une fusion "sûre" (4 changements d'une seule ligne), alors que si vous ne le faites pas, vous obtiendrez un conflit à résoudre manuellement (2 blocs se chevauchant). Le pire, c'est que si vous choisissez la première solution, le code sera toujours compilé (il s'agit maintenant d'un code de type If ) donc il ne sera pas évident que la fusion corrompue a gâché vos deux modifications.

3voto

Jim Black Points 79

L'outil de comparaison par défaut dans VS 2013 fait vous permet d'ignorer les espaces blancs après tout. Il suffit d'exécuter le processus standard de différenciation. Lorsque Visual Studio fait apparaître les différences, regardez dans la barre d'outils, où vous verrez une icône qui ressemble à un document avec 5 points en dessous, comme indiqué ci-dessous. Ce bouton permet d'indiquer si les différences affichées ignorent les espaces blancs. Cela a fonctionné assez bien pour moi ; je voulais qu'il ignore les changements dans l'espace blanc causés par l'indentation. VS 2013 toolbar button for ignoring whitespace

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