Question Différence entre la solution de génération, la solution de reconstruction et la solution propre dans Visual Studio?


Quelle est la différence entre Build Solution, Rebuild Solution et Clean Solution dans Visual Studio?

Quel est le moment approprié pour utiliser chacun d'entre eux?


897
2018-06-22 18:17


origine


Réponses:


  • Construire une solution va effectuer une construction incrémentale: si ce n'est pas pense il a besoin de reconstruire un projet, ce ne sera pas le cas. Il peut aussi utiliser des bits partiellement construits du projet s'ils n'ont pas changé (je ne sais pas jusqu'où cela peut aller)
  • Reconstruire la solution va nettoyer et ensuite construire la solution à partir de zéro, en ignorant tout ce qui est fait avant.
  • Solution propre va supprimer les artefacts de construction de la version précédente. S'il existe d'autres fichiers dans les répertoires cible de construction (bin et obj), ils ne peuvent pas être supprimés, mais les artefacts de construction réels le sont. J'ai vu un comportement pour cela varier - parfois en supprimant assez complètement et parfois pas - mais je vais donner à VS le bénéfice du doute pour le moment :)

(Les liens sont à devenv.exe commutateurs de ligne de commande, mais ils font la même chose que les éléments de menu.)


720
2018-06-22 18:21



Build solution: Compile les fichiers de code (DLL et EXE) qui sont modifiés.

Reconstruire: Supprime tous les fichiers compilés et les compile à nouveau, que le code ait changé ou non.

Solution propre: supprime tous les fichiers compilés (fichier DLL et EXE).

Vous pouvez voir cette vidéo YouTube (Visual Studio Build vs Reconstruire vs Clean (questions d'entrevue C # avec des réponses)) où j'ai démontré les différences et ci-dessous sont des représentations visuelles qui vous aideront à analyser la même plus en détail.

Build vs Rebuild

La différence entre Rebuild vs. (Clean + Build), car il semble y avoir une certaine confusion autour de ceci:

La différence est la façon dont la construction et la séquence propre se produisent pour chaque projet. Disons que votre solution a deux projets, "proj1" et "proj2". Si vous faites une reconstruction, il faudra "proj1", nettoyer (supprimer) les fichiers compilés pour "proj1" et le construire. Après cela, il faudra le deuxième projet "proj2", nettoyer les fichiers compilés pour "proj2" et compiler "proj2".

Mais si vous faites un "clean" et build ", il supprimera d'abord tous les fichiers compilés pour" proj1 "et" proj2 "et ensuite il construira" proj1 "en premier suivi de" proj2 ".

Rebuild Vs Clean


355
2017-07-22 06:24



Pris à partir de ce lien:

Construire signifie compiler et lier uniquement les fichiers sources qui ont changé   depuis la dernière construction, pendant la reconstruction   signifie compiler et relier toutes les sources   fichiers indépendamment du fait qu'ils   changé ou non. Construire est la normale   chose à faire et est plus rapide. parfois   les versions de la cible du projet   les composants peuvent se désynchroniser et   reconstruire est nécessaire pour faire la construction   réussi. En pratique, vous n'avez jamais   besoin de nettoyer.


135
2018-06-22 18:19



Construire la solution - Construit tous les assemblys qui ont changé de fichiers. Si aucun assemblage n'a été modifié, il ne sera pas reconstruit. Aussi, ne supprimera aucun fichier intermédiaire.

Utilisé le plus souvent.

Reconstruire la solution - Reconstruit tous les assemblages indépendamment des changements mais laisse des fichiers intermédiaires.

Utilisé lorsque vous remarquez que Visual Studio n'a pas incorporé vos modifications dans le dernier assemblage. Parfois, Visual Studio fait des erreurs.

Solution propre - Supprimer tous les fichiers intermédiaires et reconstruire tous les assemblages indépendamment des changements

Utilisé quand tout le reste échoue et vous devez tout nettoyer et recommencer à neuf.


27
2018-06-22 18:20



Construire la solution - Construit tous les assemblys qui ont changé de fichiers. Si aucun assemblage n'a été modifié, il ne sera pas reconstruit. Aussi, ne supprimera aucun fichier intermédiaire.

Reconstruire la solution va nettoyer et ensuite construire la solution à partir de zéro, en ignorant tout ce qu'il a fait avant

Solution propre va supprimer tous les fichiers compilés (c'est-à-dire, les fichiers EXE et DLL) du répertoire bin / obj.


13
2017-09-21 16:43



Je pense juste à Rebuild comme effectuant le premier nettoyage suivi par la construction. Peut-être que j'ai tort ... commentaires?


12
2018-06-22 18:25



Construire la solution -Construire la solution va construire votre application avec la construction du nombre de projets qui ont un changement de fichier. Et il ne supprime aucun fichier binaire existant et remplace simplement les assemblys mis à jour dans le dossier bin ou obj.

Reconstruire la solution - Reconstruire la solution va construire l'ensemble de votre application avec la construction de tous les projets sont disponibles dans votre solution en les nettoyant. Avant de le construire, il efface tous les fichiers binaires des dossiers bin et obj.

Solution propre - La solution propre supprime simplement tous les fichiers binaires de bin et du dossier obj.


7
2018-06-13 12:53



Build solution va construire tous les projets dans la solution qui ont changé. Reconstruire construit tous les projets quoi qu'il arrive, la solution propre supprime tous les fichiers temporaires en s'assurant que la prochaine version est terminée.


6
2018-06-22 18:20