2010-04-03 8 views
6

मेरे पास दो अलग-अलग नेट परियोजनाएं हैं, जो जिथब पर होस्ट की गई हैं।दो अलग-अलग गिट परियोजनाओं के बीच कोड साझा करना

मैं दो परियोजनाओं के लिए साझा "कॉमन्स" लाइब्रेरी बनाना चाहता हूं।

इस साझाकरण को सुविधाजनक बनाने के लिए मैं अपने भंडार को कैसे ढूढ़ूं?

आदर्श रूप से, एक परियोजना में इस सामान्य पुस्तकालय में बदलाव आसानी से अन्य परियोजना में धकेल दिया जा सकता है। मैं कोड को दो परियोजनाओं (विजुअल स्टूडियो के भीतर) से संपादन योग्य रखना पसंद करता हूं, और इसे पुस्तकालय के रूप में शामिल नहीं करता हूं। क्या इसके लिए सबसे अच्छा अभ्यास है?

उत्तर

6

आप Git submodules उपयोग कर सकते हैं: https://git-scm.com/book/en/v2/Git-Tools-Submodules

+0

आप प्रत्येक भंडार में 'गिट सबमिड्यूल पथ-से-साझा-भंडार' जोड़ते हैं। साझा भंडार के नाम के साथ एक उप-निर्देशिका बनाई जाएगी। यह प्रश्न यहां प्रासंगिक है: http://stackoverflow.com/questions/1462754/what-is-the-advantage-of-using-git-submodules-over-having-a-repo-inside-another –

+1

यह बहुत अजीब है । मैं केवल एक टूटी हुई लिंक को ठीक करना चाहता था। मैं ऐसा नहीं कर सका क्योंकि यह बहुत छोटा था, मुझसे मत पूछो क्यों। मुझे नहीं पता था कि क्या जोड़ना है, क्योंकि मुझे submodules के बारे में पता नहीं था। तो, मैंने एक वाक्य जोड़ा, ताकि मैं उस टूटी हुई लिंक को ठीक कर सकूं। यह स्वीकार किया गया था। बाद में, जब मैंने उस बेकार वाक्य को और अधिक उपयोगी तरीके से बदलने की कोशिश की, तो इसे अस्वीकार कर दिया गया। तो, हम उस बेकार वाक्य के साथ छोड़ दिया गया है। –

0

Git submodules शायद आपका जवाब नहीं है। इस ब्लॉगपोस्ट को देखें जो आगे के विवरण में जाता है: http://blogs.atlassian.com/2013/05/alternatives-to-git-submodule-git-subtree/

+0

गिट-सबट्री (आपके संदर्भ से) के बारे में: नकारात्मकता यह है कि आपकी सभी सबप्रोजेक्ट फ़ाइलें मूल भंडार में मौजूद हैं, जिसका अर्थ है कि आप मूल रूप से अपने प्रोजेक्ट रिपॉजिटरीज़ को विभाजित करने का कुछ कारण छोड़ रहे हैं: एक कैननिकल रिपोजिटरी साझा कोड के दिए गए सेट के लिए। अगर कोई उपप्रोजेक्ट में बदलाव करता है, तो वे इसे स्थानीय रूप से अन्य परिवर्तनों के साथ विलय कर सकते हैं, लेकिन अगर वे इसे परियोजनाओं के साथ साझा करना चाहते हैं तो उन्हें स्पष्ट रूप से उस बदलाव को अपने प्रोजेक्ट से बाहर करना होगा। –

+0

लेकिन, मैं मानता हूं कि कुछ अन्य विकल्प https://codingkilledthecat.wordpress.com/2012/04/28/why-your-company-shouldnt-use-git-submodules/ शायद बेहतर हैं। –