में सभी असेंबली के संस्करण संख्या को अपडेट करना मुझे विजुअल स्टूडियो में एक बड़ा समाधान मिला है। समाधान में सभी असेंबली के लिए मेजर/माइनर संस्करण संख्याओं को एक बार में अपडेट करने का कोई तरीका है?समाधान
समाधान
उत्तर
आप समाधान में सभी परियोजनाओं के बीच एक AssemblyInfo.cs फ़ाइल साझा कर सकते हैं। इस साझा फ़ाइल में संस्करण संख्याएं होनी चाहिए। इसे साझा करने के लिए, आपको वीएस में मौजूदा फ़ाइल जोड़ें का उपयोग करना होगा और फ़ाइल संवाद में लिंक के रूप में जोड़ें का चयन करना होगा। प्रत्येक प्रोजेक्ट में इसका निजी और साझा AssemblyInfo.cs है। निजी में अभी भी गैर-संस्करण विशेषताओं को शामिल किया गया है।
मैं एक TeamCity सेटअप है, जहां मैं एक TeamCity निर्माण में साझा फ़ाइल पैदा कर रहा हूँ वास्तविक निर्माण संस्करण का उपयोग मिल गया है और यह खूबसूरती से काम करता है।
खोजें/बदलें?
संस्करण संख्याओं सब (प्रत्येक परियोजना के लिए गुण फ़ोल्डर के अंतर्गत AssemblyInfo.cs) के बाद पाठ फ़ाइलों में संग्रहीत हैं।
काम करेगा कि अगर सभी विधानसभाओं में एक ही प्रमुख/लघु संस्करण पर थे। दुर्भाग्यवश मेरी जगह सभी जगह पर हैं :) – PaulB
क्या आप उन्हें बढ़ाना चाहते हैं, या उन्हें सब एक ही बनाना चाहते हैं? क्योंकि आप उन्हें आसानी से नियमित अभिव्यक्ति का उपयोग कर सकते हैं, भले ही उनके पास अलग-अलग संख्याएं हों। –
यहाँ एक है कि काम करेगा है: \\ [विधानसभा: \ s + AssemblyVersion \\ ("\ d + \ \ d + \ \ d + \ \ d +।।।" \\) \\] –
हम एक भी AssemblyInfoCommon.cs जो संस्करण संख्या है, और संदर्भ द्वारा प्रत्येक परियोजना में शामिल किया गया है। अन्य AssemblyInfo.cs फ़ाइलें बनी रहती हैं लेकिन केवल असेंबली-विशिष्ट जानकारी (शीर्षक और विवरण) होती हैं। इसलिए हमारे पास प्रत्येक सी # प्रोजेक्ट के लिए अपडेट करने के लिए केवल एक फ़ाइल है।
आप भी अपने वर्गों में से एक में एक सार्वजनिक स्थिरांक स्ट्रिंग, कि बिल्ड नंबर का प्रतिनिधित्व करता है, और विभिन्न परियोजनाओं के लिए अपने सभी AssemblyInfo.cs में इसका इस्तेमाल कर सकते हैं। बेशक यह काम करने के लिए, अन्य सभी परियोजनाओं द्वारा संदर्भित एक परियोजना में होना होगा।
यह एक अच्छा विकल्प है, अगर आप अपने सभी परियोजनाओं में एक ही AssemblyInfo.cs को संदर्भित करने के विचार पसंद नहीं है है।
संपादित करें: नोट! यह तब भी काम करता है जब आप एकाधिक भाषाओं का उपयोग करते हैं (मेरे मामले में एफ # और सी #)।
एक बहुत ही उपयोगी उपयोगिता मैं कुछ समय पहले एक परियोजना की जो बहुत कामयाब संस्करण की आवश्यकता पर इस्तेमाल किया है:
http://www.codeproject.com/KB/macros/versioningcontrolledbuild.aspx
इसके अलावा, आप कुछ "मूल" विधानसभा बना सकते हैं और करने के लिए प्रत्येक अपने विधानसभा संदर्भ में जोड़ सकते हैं "कोर" असेंबली। "कोर" असेंबली निरंतर स्थिर हो जाएगा। इस मामले में प्रत्येक असेंबली जानकारी फ़ाइल में "कोर" निरंतर से भिन्न संस्करण सेट किया जाएगा। उदाहरण के लिए:
"कोर" असेंबली में निरंतर के साथ फ़ाइल Ver.cs है: सार्वजनिक कॉन्स स्ट्रिंग मान = "0.0.0.99";
प्रत्येक समाधान विधानसभा की जानकारी मेंदेगा: [विधानसभा: AssemblyFileVersion (Ver.Value)]
- 1. समाधान
- 2. विजुअल स्टूडियो: एकल समाधान या कई समाधान?
- 3. समाधान स्टूडियो प्लग-इन समाधान/परियोजना
- 4. .NET समाधान
- 5. कैशिंग समाधान
- 6. डुप्लिकेट समाधान
- 7. स्मार्ट समाधान
- 8. संघर्ष समाधान?
- 9. समाधान एक्सप्लोरर
- 10. समाधान एक्सप्लोरर
- 11. समाधान एक्सप्लोरर
- 12. बेस्ट समाधान
- 13. एक समाधान
- 14. एकाधिक समाधान
- 15. समाधान एक्सप्लोरर
- 16. आवश्यकता समाधान में पथ समाधान कार्य कैसे शामिल करता है?
- 17. समाधान एक्सप्लोरर बनाम समाधान नेविगेटर बनाम क्लास व्यू
- 18. वीएस 2008 समाधान एक्सप्लोरर समाधान नहीं दिखा रहा है
- 19. एक .NET समाधान
- 20. विजुअल स्टूडियो समाधान
- 21. एक इंट्रानेट समाधान
- 22. सी # - प्रोजेक्ट समाधान
- 23. एसवीएन क्लाइंट VB.NET समाधान
- 24. रेल रिकॉर्ड संस्करण समाधान
- 25. विजुअल स्टूडियो बड़े समाधान
- 26. समाधान जब जावा जावा
- 27. समाधान करना Maven निर्भरता
- 28. ASP.NET MVC समाधान
- 29. कॉचडब संघर्ष समाधान
- 30. विजुअल स्टूडियो एएसपी.NET समाधान
मैं साझा फ़ाइल कॉल करते हैं " SolutionInfo.cs "में कॉपीराइट जैसी चीजों के साथ-साथ एससीएम के लिए एक समाधान आइटम के रूप में सहेजा गया है, जिसमें सभी परियोजनाओं को समान रूप से लिंक किया गया है। – Richard
मैंने अपने मामले में फ़ाइल संस्करणइंफो को बुलाया :) – grover
यह इतना शानदार (और शानदार ढंग से शानदार) है, और सामान्य रूप से खेती करने की इतनी महान आदत है। धन्यवाद। – GregRos