2010-12-11 11 views
33

मुझे नहीं पता कि मैं सही समझ गया हूं, विजुअल स्टूडियो में किसी प्रोजेक्ट के "बिल्ड" और "पुनर्निर्माण" कमांड के बीच का अंतर यह तथ्य है कि एक बिल्ड केवल उस कोड को संकलित करता है जो बदल गया था, क्योंकि "पुनर्निर्माण" कमांड संकलन परियोजना से सभी कोड परवाह किए बिना यह बदला गया था या नहीं।विजुअल स्टूडियो में "बिल्ड" और "पुनर्निर्माण" के बीच क्या अंतर है?

इसके अलावा पुनर्निर्माण आदेश में परियोजना की सफाई भी शामिल है, क्योंकि बिल्ड कमांड नहीं है?

कृपया मुझे इन मतभेदों को बेहतर समझने के लिए सलाह दें।

धन्यवाद!

+0

__Related # 1__: [विजुअल स्टूडियो में बिल्ड समाधान, पुनर्निर्माण समाधान और स्वच्छ समाधान के बीच अंतर] (https://stackoverflow.com/q/3095901/3367974), __Related # 2__: [पुनर्निर्माण और स्वच्छ + विजुअल स्टूडियो में बनाएं] (https://stackoverflow.com/q/1247457/3367974) –

उत्तर

27

इसके अलावा पुनर्निर्माण आदेश में परियोजना की सफाई भी शामिल है, क्योंकि बिल्ड कमांड नहीं है?

आपने मौलिक अंतर की पहचान की है।

बिल्ड उन अंतिम फ़ाइलों को देखेंगे जो अंतिम सफल संकलन और लिंक के बाद संशोधित किए गए हैं और बस उन्हें संकलित करें और फिर परिणाम लिंक करें।

पुनर्निर्माण सबकुछ फिर से तैयार करेगा।

कड़ाई से बोलना यह एक साफ (जो मध्यवर्ती और आउटपुट फाइलों को हटा देता है) के लिए अलग हो सकता है और निर्माण और बस सबकुछ फिर से संकलित कर सकता है, लेकिन नतीजा वही होना चाहिए। हालांकि, ऐसे मामले हो सकते हैं जो विफल हो जाएं (फेमरेफ़ की टिप्पणी देखें)।

+1

आपके अंतिम बिंदु पर: यह निर्भर करता है। कुछ मामलों में, शेष अस्थायी फ़ाइलें या बदले गए संदर्भ आपके निर्माण को बाधित कर सकते हैं, खासकर बाद के मामले के साथ, क्योंकि कोई कोड नहीं बदला गया है, लेकिन पुराने संदर्भ अभी भी उपयोग किए जाते हैं। उनको बदलने के लिए एक साफ जरूरत है। – Femaref

+2

यकीन नहीं क्यों, लेकिन कभी-कभी साफ सभी पुरानी संदर्भों से छुटकारा नहीं लगता है। जब ऐसा होता है, तो मैं obj निर्देशिका को हटा दूंगा। – Trevor

26

का निर्माण अंतिम संकलन के बाद परिवर्तित या लिखे गए सभी कोड को संकलित करने का मतलब है।

पुनर्निर्माण का मतलब पूरे परियोजना को संकलित करना है चाहे कोड बदल दिया गया हो या नहीं।

तो, आपको अपना उत्तर पढ़ने के बाद, हाँ आप सही होंगे।

संबंधित मुद्दे