2011-03-28 13 views
5

के लिए डीबग और रिलीज दोनों को कैसे बनाया जाए मेरे दिमाग में पहला विचार दो विजुअल स्टूडियो (.sln) बिल्ड चरणों का उपयोग करना है - प्रत्येक कॉन्फ़िगरेशन के लिए एक। (एकाधिक बिल्ड चरण टीसी v5 + पर समर्थन करता है)।टीमसिटी प्रोजेक्ट

क्या कोई बेहतर तरीका है?

+0

संभावित डुप्लिकेट [टीमसिटी में सभी बिल्ड कॉन्फ़िगरेशन चलाने शुरू करना] (http://stackoverflow.com/questions/16167710/starting-running-all-build-configuration-in-teamcity) – qub1n

उत्तर

2

हम परीक्षण चलाने, एसक्यूएल स्क्रिप्ट बनाने आदि में जोड़ने के लिए हमेशा एक एमएसबिल्ड के साथ एसएलएन बिल्ड को लपेटते हैं। इस बिंदु पर आप एसएलएन को कॉल कर सकते हैं और उचित संपत्ति मूल्य निर्धारित कर सकते हैं; विन्यास = डिबग और विन्यास = रिलीज

जब तक आप सिर्फ pdb फाइलों के साथ जारी है, जिसमें मामले सिर्फ दृश्य स्टूडियो में निर्माण खंड में गुणों को बदलने (जो हमेशा एक अच्छा विचार है) करने के लिए कोशिश कर रहे हैं

+0

प्रतिक्रिया के लिए धन्यवाद। क्या आप पीडीबी मुद्दे के बारे में अधिक जानकारी दे सकते हैं? – Schneider

+0

पीडीबी फ़ाइल उपलब्ध कराने के उत्पादन में त्रुटि की स्थिति में विस्तार जोड़ने के लिए उपयोगी है। आप वीएस को अनुकूलित बिल्ड (उर्फ रिलीज) में भी पीडीबी फाइलों का निर्माण करने के लिए कह सकते हैं। प्रोजेक्ट गुणों में, बिल्ड, एडवांस्ड, डीबग जानकारी, केवल पीडीबी पर सेट करें (ऐसा लगता है कि यह डिफ़ॉल्ट लगता है, लेकिन यह सिर्फ मुझे हो सकता है)। यह मिय आपको अधिक जानकारी देता है http://vanryswyckjan.blogspot.com/2005/09/pdb-only-debug-information-option.html –

7

हम दो अलग-अलग MSBuild लक्ष्य है कि समाधान का निर्माण विभिन्न गुणों का उपयोग कर:

<Target Name="Build-Debug"> 
    <MSBuild Projects="OurSolution.sln" Targets="Rebuild" Properties="Configuration=Debug" /> 
</Target> 

<Target Name="Build-Release"> 
    <MSBuild Projects="OurSolution.sln" Targets="Rebuild" Properties="Configuration=Release" /> 
</Target> 

TeamCity से, हम एक "विन्यास" (TeamCity बात में) Build-Debug लक्ष्य कॉल है, और एक नोटर जो Build-Release पर कॉल करता है।

+7

यदि कोई जानता है कि यह एक्सएमएल कहाँ जाना चाहिए, तो यह इस जवाब में काफी सुधार करेगा। परियोजना फाइल? –

+0

इसके अलावा, बिंदु दोनों एक ही समय में * बनाना था ... अलग कॉन्फ़िगरेशन होने से डिफ़ॉल्ट केस से बेहतर नहीं है। –