एसवीएन के साथ, मेरे पास एक बड़ा भंडार था जिसे मैंने एक सर्वर पर रखा, और कुछ मशीनों पर चेक-आउट किया। यह एक बहुत अच्छा बैकअप सिस्टम था, और मुझे आसानी से किसी भी मशीन पर काम करने की अनुमति दी। मैं एक विशिष्ट परियोजना की जांच कर सकता था, प्रतिबद्ध था और इसने 'मास्टर' परियोजना को अद्यतन किया, या मैं पूरी बात की जांच कर सकता था।
अब, मेरे पास गिट रिपॉजिटरी का एक गुच्छा है, विभिन्न परियोजनाओं के लिए, जिनमें से कई गिटबब पर हैं। मेरे पास SVN रिपॉजिटरी भी है जिसका मैंने उल्लेख किया है, git-svn कमांड के माध्यम से आयात किया गया है।
मूल रूप से, मुझे अपने सभी कोड (न केवल प्रोजेक्ट, बल्कि यादृच्छिक स्निपेट और स्क्रिप्ट्स, कुछ चीजें जैसे कि मेरा सीवी, लेख जो मैंने लिखे हैं, वेबसाइटें और इतने पर) हैं, एक बड़ी रिपॉजिटरी में मैं आसानी से रिमोट पर क्लोन कर सकता हूं। बैकअप के रूप में मशीनें, या मेमोरी-स्टिक्स / हार्डड्राइव।
समस्या यह है, क्योंकि यह एक निजी भंडार है, और गिट एक विशिष्ट फ़ोल्डर से बाहर की जाँच करने की अनुमति नहीं देता है (कि मैं एक अलग परियोजना के रूप में गिटब को धक्का दे सकता हूं, लेकिन मास्टर-रेपो और उप- दोनों में परिवर्तन दिखाई देते हैं) रेपोस)
मैं git सबमॉड्यूल सिस्टम का उपयोग कर सकता हूं , लेकिन यह अभिनय नहीं करता है कि मैं यह कैसे चाहता हूं (सबमॉड्यूल अन्य रिपॉजिटरी के संकेत हैं, और वास्तव में वास्तविक कोड नहीं है, इसलिए यह बैकअप के लिए बेकार है)
वर्तमान में मेरे पास git-repos का एक फ़ोल्डर है (उदाहरण के लिए, ~ / code_projects / proj1 / .it / ~ / code_projects / proj2 / .git /), और उसके बाद proj1 में परिवर्तन करने के बाद मैं करता हूँ git push github
, फिर मैं फ़ाइलों को कॉपी करता हूँ ~ /। दस्तावेज़ / कोड / अजगर / परियोजनाएं / proj1 / और एक ही काम करते हैं (व्यक्तिगत प्रत्यावर्तन में कई लोगों के बजाय)। फिर करते हैं git push backupdrive1
, git push mymemorystick
आदि
तो, सवाल: आपके व्यक्तिगत कोड और git रिपॉजिटरी के साथ प्रोजेक्ट कैसे करते हैं, और उन्हें सिंक और बैक-अप रखते हैं?