मैंने हाल ही में एक सॉफ्टवेयर उत्पाद का प्रभार लिया है जिसे विकसित किया गया था बल्कि असंगठित किया गया था और मैंने एक नई परियोजना संरचना, एक स्रोत कोड भंडार, अंक ट्रैकिंग और नैन और टीमसिटी का उपयोग करके एक बिल्ड सिस्टम स्थापित किया है। मैं उस बिंदु पर हूं जहां प्रमुख शाखाओं में से प्रत्येक को प्रतिबद्धता संकलित, परीक्षण और एक सेटअप में निर्माण हो जाती है।सॉफ्टवेयर पैच बनाने के लिए एक अच्छा अभ्यास क्या है?
हमेशा पूर्ण सेटअप का निर्माण और शिपिंग मेरे लिए गलत लगता है और मैं किसी प्रकार की स्वचालित पैच बिल्डिंग स्थापित करना चाहता हूं, लेकिन मुझे यह नहीं पता कि यह कैसे करना है। क्या आपके पास कोई सुझाव है कि मैं यह कैसे कर सकता हूं या मुझे इस विषय पर कुछ जानकारी कहां मिल सकती है? Google अब तक कोई मदद नहीं कर रहा था।
मेरे वर्तमान सेटअप पर कुछ और जानकारी:
भंडार: - Git: - 2 प्रमुख शाखाओं: विकास और मास्टर
बिल्ड सिस्टम: - teamcity - 2 विन्यास: निर्माण के लिए एक प्रत्येक शाखा - निर्माण में केवल एक निर्माण चरण होता है: - नैन धावक: नेंट स्क्रिप्ट भंडार का हिस्सा है और इसमें निम्न लक्ष्य शामिल हैं: स्वच्छ, init, संकलन, परीक्षण, तैनाती, build_setup (inno सेटअप का उपयोग करके)
मुझे लगता है कि मुझे नेंट स्क्रिप्ट को टुकड़ों में विभाजित करना होगा और किसी भी तरह से नए निर्माण कलाकृतियों की तुलना किसी पुराने तरीके से करने और अद्यतन फ़ाइलों वाली पैच बनाने के लिए अलग-अलग निर्माण चरणों का उपयोग करना होगा। क्या मैं सही रास्ते पर हूं और यदि ऐसा है, तो क्या किसी को टीमसिटी को सेटअप करने के तरीके पर एक अच्छा उदाहरण या ट्यूटोरियल पता है।
यह एक ~ 250MB अंतिम-उपयोगकर्ता एप्लिकेशन है, लेकिन आकार उदाहरण फ़ाइलें, ट्यूटोरियल और तृतीय पक्ष निर्भरता के सभी प्रकार से आता है। हमेशा एक सेटअप के निर्माण के बारे में: यह IMHO हमेशा क्योंकि एक सॉफ्टवेयर उपयोगकर्ता मैं हमेशा क्यों एक नया सॉफ्टवेयर है जो मैं बस डाउनलोड और स्थापित पैच डाउनलोड करने के लिए है के रूप में, एक सॉफ्टवेयर के अपने सबसे हाल और सबसे bugfree संस्करण जहाज के लिए बेहतर है। एक autoupdate प्रणाली पैच डाउनलोड और स्थापित नहीं करता है? – Gooo