2011-05-17 15 views
5

मेरे पास जिथब में एक परियोजना "माईफर्स्टप्रोजेक्ट" है। अब मैं "MyPirstProject" क्लोन करके एक और प्रोजेक्ट "सेकेंडप्रोजेक्ट" बना रहा हूं क्योंकि मूल कोड समान होंगे।एक नया भंडार कैसे बनाएं जो एक और भंडार का क्लोन है?

जब भी मैं "MYfirstProject" में अपडेट करता हूं तो मैं केवल अपडेट के लिए खींचता हूं।

अब मैं जिथब में इस "सेकेंडप्रोजेक्ट" के लिए एक भंडार बनाना चाहता हूं क्योंकि मुझे विभिन्न कंप्यूटरों में काम करना है और इसमें "MYfirstProject" से अलग-अलग कोड होंगे।

मुझे नहीं लगता कि ब्रांचिंग करना सही है क्योंकि मैं उन्हें कभी विलय नहीं करूँगा।

मैं कैसे कर सकता हूं?

क्या मुझे एक नई भंडार में धक्का देने की ज़रूरत है? क्या यह "माईफर्स्टप्रोजेक्ट" से खींच नहीं पाएगा?

आप क्या करते हैं?

अग्रिम धन्यवाद।

उत्तर

16

ऐसा करने के कई तरीके हैं यह एक स्मार्ट सहित, लेकिन इस तरह मैं यह करूँगा:

  1. SecondProject नामक गिथब पर एक नया रेपो बनाएं।
  2. डिस्क से या गीथब से स्थानीय रूप से MyfirstProject क्लोन करें। फिर उन शाखाओं पर गिट पुल का उपयोग करें जिन्हें आपको दूसरे रेपो में स्थानांतरित करने की आवश्यकता है।
  3. git remote set-url origin [email protected]:yourname/SecondProject.git
  4. इसे पुश करें।

ध्यान दें कि क्लोन MyfirstProject के साथ साझा इतिहास को बरकरार रखता है, जो उपयोगी है यदि आप "कभी विलय" बिट के बारे में अपना मन बदलते हैं।

+0

क्या मैं माईफर्स्टप्रोजेक्ट से खींच सकता हूं? – shin

+0

@ शिन: यदि आप पहली परियोजना को दूसरे के लिए रिमोट रिपोजिटरी के रूप में जोड़ते हैं तो आपको खींचने में सक्षम होना चाहिए। – gotgenes

+1

@ शिन: 'गिट रिमोट पहली गिट जोड़ें: // github.com/yourname/MyfirstProject.git', फिर जब भी आप' माईफर्स्टप्रोजेक्ट 'में परिवर्तन प्राप्त करना चाहते हैं तो' गिट खींचें पहले मास्टर '(या' गिट फ़ेच ')। –

0

अब मैं "MyfirstProject" क्लोनिंग कोर कोड के बाद से ही होगा द्वारा एक अन्य परियोजना "SecondProject" बनाने रहा हूँ।

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

बजाय क्या आपका मतलब है कि आप कुछ आवेदन है, लेकिन आप जो मशीन आप काम के आधार पर विभिन्न विन्यास की जरूरत है/पर संकलन, कि नहीं Git भंडार का एक अलग क्लोन के रूप में, एक ही भंडार में शाखाओं के रूप में नज़र रखी जानी चाहिए। एक "मास्टर" शाखा है जिसमें आपके कोड की डिफ़ॉल्ट कॉन्फ़िगरेशन है (उदा।, मशीन जो आप अक्सर उपयोग करते हैं, या उत्पादन मशीन)। आपके अन्य मशीनों के लिए विशिष्ट कॉन्फ़िगरेशन एक अलग शाखा प्राप्त करते हैं, उदाहरण के लिए आपके लैपटॉप के लिए "लैपटॉप" शाखा, आपके वर्कस्टेशन डेस्कटॉप के लिए "काम", आपके अमेज़ॅन ईसी 2 इंस्टेंस आदि के लिए "क्लाउड",

+0

जबकि मैं सामान्य रूप से सहमत हूं, कभी-कभी कुछ कोड कॉपी करने और अपनी परियोजना को फोर्क करने के लिए कभी-कभी उपयोगी हो सकता है। ओपी हमेशा परियोजनाओं को बाद में विलय कर सकता है, भले ही वे अलग-अलग प्रतिनिधि हों। –

संबंधित मुद्दे