मैं कोड प्रबंधन के लिए गिट का उपयोग करके एक django परियोजना विकसित कर रहा हूं। मुख्य परियोजना में कई ऐप्स हैं जो सबमिड्यूल के रूप में हैं, जिनमें से प्रत्येक स्वतंत्र रूप से उपयोग किया जा सकता है, इस प्रकार प्रत्येक अलग गिट रेपो में हैं। ये सभी ऐप्स विकास में हैं, और कम से कम एक अन्य परियोजना से फोर्क किया गया है। ये ऐप्स पाइप के माध्यम से स्थापित किए जा सकते हैं, जब रेपो क्लोन करते हैं, तो रूट में setup.py और README और आगे होते हैं, फिर सबफ़ोल्डर में वास्तविक ऐप।एक गिट प्रोजेक्ट में एकाधिक पाइप पैकेज कैसे विकसित करें?
यदि मैं ऐप इंस्टॉल करता हूं, तो कार्य कोड गिट प्रबंधन के तहत फ़ोल्डर में एक अलग स्थान पर होगा, इसलिए हर बार जब मैं कोड बदलता हूं तो मुझे pip install
(या कोई और पाइप है) इसके लिए कमांड?) कोड को अपडेट करने के लिए जहां पाइथन इसे ढूंढ रहा है
मैं उपरोक्त स्थिति को रोकने के लिए pip install -e
का उपयोग कर सकता हूं। हालांकि, मुझे प्रत्येक ऐप को अलग फ़ोल्डर्स में क्लोन करने की आवश्यकता होगी: मैं केवल project/apps
में ऐप्स को क्लोन नहीं कर सकता हूं और project/apps/foo
और project/apps/bar
है क्योंकि वे दोनों project/apps
में अपना setup.py ड्रॉप करने का प्रयास करेंगे। इसके बजाय मुझे project/apps/foo
में foo क्लोन करने की आवश्यकता होगी लेकिन फिर वास्तविक कोड project/apps/foo/foo
में है। यह मुझे बदसूरत और बहुत django-ish के रूप में हमला करता है।
क्या मैं ऐसा करने का प्रयास कर रहा हूं जो करने के लिए कुछ और सुंदर तरीका है?
मैं थोड़ा उलझन में हूं - आपको या तो इन ऐप्स को 'पीपी' के साथ इंस्टॉल करना चाहिए या सीधे ऐप्स को क्लोन करना और उनका उपयोग करना चाहिए। लगभग हर मामले में, आप या तो एक सबमिशन या पीआईपी (शायद एक आवश्यकता फ़ाइल के माध्यम से) का उपयोग करेंगे, लेकिन दोनों नहीं। –