मेरे पास स्रोत नियंत्रण के तहत एक बड़ा कोड आधार है (उपversण, अब गिट था)। कोड संकलित करने और परीक्षण चलाने के लिए मैं तृतीय पक्ष पुस्तकालयों का एक सेट उपयोग करता हूं। इन पुस्तकालयोंस्रोत नियंत्रण के तहत कोड द्वारा उपयोग किए गए तृतीय पक्ष स्रोतों और बाइनरी का प्रबंधन
- बाइनरी केवल
- 3 पार्टी सूत्रों
- 3 पार्टी सूत्रों का कहना है + स्थानीय संशोधन
कुछ categoriesL में बांटा जा सकता प्रत्येक लायब्रेरी उसका {विंडोज, लिनक्स} X {डिबग है, रिलीज} एक्स {32 बिट, 64 बिट} विन्यास। इसके अलावा ये पुस्तकालय मेरे प्रोजेक्ट के समय और विभिन्न संस्करणों के साथ विकसित होते हैं, इन पुस्तकालयों के विभिन्न संस्करण/निर्माण का उपयोग करते हैं।
मेरा प्रश्न यह है कि इन तृतीय पक्षों को स्टोर करने का सबसे अच्छा तरीका क्या है?
- परियोजना स्रोत भंडार छोटे
- 3 पार्टियों के साथ सिंक में परियोजना स्रोत रखें ताकि मैं हमेशा संकलन और चलाने के लिए और पुराने संस्करण कर सकते हैं के आकार रखें:
यहाँ वरीयताओं के अपने सेट है
- क्रॉस मंच का प्रबंधन करने के
सरल मैंने कोशिश की और के बारे में सोचा कई समाधान लेकिन न ही संतोषजनक था:
- लाइब्रेरी के सभी संस्करणों को मैन्युअल रूप से प्रबंधित FTP सर्वर से बाइनरी लाने के लिए एक संस्करण स्क्रिप्ट का उपयोग करें। यह काम करता है, लेकिन सर्वर पर निर्देशिका संरचना के सावधान प्रबंधन की आवश्यकता है। यह त्रुटि प्रवण है क्योंकि कोई नया निर्माण के साथ बाइनरी में से एक को ओवरराइट कर सकता है।
- एसवीएन बाहरी - उस समय एसवीएन बाहरी एक विशिष्ट टैग का संदर्भ नहीं दे सका। आज मैं गिट का उपयोग कर रहा हूँ।
- गिट submodules - पूरे बाहरी भंडार खींचता है जो विशाल हो सकता है। वैकल्पिक रूप से इसे प्रत्येक पुस्तकालय के लिए एक अलग भंडार प्रबंधन की आवश्यकता होती है। एक विशिष्ट टैग पर सबमिशन बिंदु जिसका अर्थ है कि या तो मुझे सभी बाहरी मिलते हैं, जब मुझे केवल कुछ चाहिए, या मैं गिट पेड़ में कुछ अजीब फ़ाइल सिस्टम की नकल करता हूं।
यह मुझे स्पष्ट है कि तीसरे पक्ष के स्रोतों को एक विक्रेता शाखा में गिट में संग्रहीत करने की आवश्यकता है, लेकिन बाइनरी और हेडर एक अलग कहानी हैं।
मैं अपने खुद के खजाने में उन निर्भरता भंडारण के खिलाफ की सिफारिश करेंगे। क्या आपने मेवेन की तरह कुछ माना है? कोई फर्क नहीं पड़ता कि आप किस भाषा का उपयोग कर रहे हैं लेकिन मुझे लगता है कि अधिकांश प्रमुख प्लेटफॉर्म के लिए समान सामान मौजूद है। – Dan
स्रोत रेपो में वास्तव में उस जगह को लेने में बाइनरी शामिल है? – StingyJack
कुछ बाइनरी काफी बड़ी हैं। हालांकि वास्तविक समस्या में प्रोजेक्ट रिपोजिटरी में बाइनरी के कई संस्करण हैं और एकाधिक प्रोजेक्ट्स के बीच समान संस्करण वाली बाइनरी साझा करना है। – Xyand