2010-05-23 8 views
5

पर व्यक्तिगत विकास के लिए गिट का उपयोग करके अच्छी रणनीति खोजने की कोशिश कर रहा है।स्थानीय/व्यक्तिगत मशीन

मेरे पास एक व्यक्तिगत मैकबुक है और मैं परिवर्तनों को ट्रैक करने के लिए गिट का उपयोग करना चाहता हूं। मैं बस अपनी मैकबुक पर एक रेपो डालना चाहता हूं और वहां काम करना चाहता हूं। यह एक अच्छा विचार है?

क्या होगा यदि: मेरे मैकबुक एचडी में कहीं भी एक मुख्य रेपो है, जैसे /Users/user/projects/project1 और इसे मेरी मैकबुक पर दूसरे क्षेत्र में क्लोन करें जहां मैं वास्तव में विकास करता हूं? लेकिन इसमें बहुत सारी अनावश्यकता है।

मैं थोड़ा उलझन में हूं और जानना चाहता हूं कि समान व्यक्तिगत विकास वातावरण में सामान्य कदम क्या हैं।

बहुत बहुत धन्यवाद।

उत्तर

2

मैं सिर्फ अपने मैकबुक पर एक रेपो डालना चाहता हूं और वहां काम करता हूं। क्या यह एक अच्छा विचार है?

हाँ, यह एक अच्छा विचार है। यह वही है जो मैं करता हूं।

क्या होगा यदि: मैं अपने मैकबुक HD, जैसे, /उपयोगकर्ता/उपयोगकर्ता/परियोजनाओं/Project1 और यह एक और क्षेत्र के लिए क्लोन मेरी मैकबुक पर जहां मैं वास्तव में प्रदर्शन के विकास में एक मुख्य रेपो कहीं है? लेकिन में बहुत सारी अनावश्यकता है।

आपका भंडार /Users/user/projects/project1/.git/

में रहते हैं तो आप निर्देशिका/उपयोगकर्ता/उपयोगकर्ता/परियोजनाओं/Project1 के भंडार चेकआउट और वहाँ उस पर काम करते हैं। आपको कुछ भी क्लोन करने की आवश्यकता नहीं है। http://nvie.com/git-model

यह आदमी भी विकसित अतिरिक्त Git इस प्रवाह (http://github.com/nvie/gitflow/tree/0.2) के साथ काम करने के लिए आदेश:

+0

बस एक प्रश्न: जब मैं वर्तमान निर्देशिका में 'गिट इनिट' के बाद पहली बार प्रतिबद्ध करता हूं, तो मुझे वास्तव में कुछ भी चेकआउट करने की आवश्यकता नहीं है, है ना? मेरा मतलब है कि मेरी मास्टर शाखा पहले से ही जांच कर दी गई होगी। अब, अगर मैं एक नई शाखा बना देता हूं, तो मुझे चेकआउट करने की आवश्यकता है (लेकिन एक ही निर्देशिका में)। अगर मुझे प्रश्न को फिर से लिखना है तो कृपया मुझे बताएं। :) धन्यवाद। –

+0

हाँ, यह सही है। आप पुरानी प्रतिबद्धताओं को चेकआउट करने के लिए चेकआउट कमांड का भी उपयोग कर सकते हैं। उदाहरण के लिए, हो सकता है कि आपने कुछ कोड हटा दिया हो और अब आप इसे फिर से देखना चाहते हैं। – Jay

1

मैं गिट के बजाय एचजी का उपयोग करता हूं लेकिन वर्कफ़्लो जो आप अभी भी कम या ज्यादा वर्णन करते हैं।

एकमात्र चीज जो मैं जोड़ूंगा वह यह है कि मुझे विंडोज लाइव मेष खाता मिला क्योंकि यह क्लाउड पर ऑटो-सिंक करता है और मैक पर भी काम करता है (यह अभी भी बीटा लेकिन मुझे बहुत परेशानी नहीं है) लेकिन वहां हैं शायद अन्य क्लाउड स्टोरेज प्रदाताओं।

वैसे भी, मैं लाइव मेष फ़ोल्डर के अंदर एक कोर भंडार बना देता हूं और फिर उस से एक कार्यशील निर्देशिका में क्लोन करता हूं। मेरे मेष खाते पर कोड हमेशा एक अंतिम ज्ञात अच्छा होता है और मेरे पास एक ही मशीन पर एक ही प्रोजेक्ट के 2 या अधिक काम करने वाले क्लोन होंगे जहां मैं एक ही समस्या को हल करने के लिए अलग-अलग दृष्टिकोणों की कोशिश कर रहा हूं।

2

यह ठीक है कि git init जहां आपका काम है, आपको इसे दूसरे क्षेत्र में क्लोन करने की आवश्यकता नहीं है।

बस याद रखें कि आपको अभी भी बैक अप लेने की आवश्यकता है।

2

मैं इस प्रवाह व्यक्तिगत और समूह के विकास के लिए बहुत अच्छा लगता है। आपको इसे अपने आप से बाहर करना चाहिए!

+0

धन्यवाद। यह एक अच्छा प्रवाह चार्ट है। –

1

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

1

मुझे bare repo कहीं और क्लोन करना पसंद है। यह मुझे बिना किसी समस्या के धक्का देने की अनुमति देता है।
मैं होगा:

  • एक नंगे रेपो अपने स्थानीय ड्राइव पर क्लोन, हमेशा सुलभ, अधिमानतः कुछ ऑनलाइन तुल्यकालन सेवा like DropBox से जुड़ा हुआ।
  • एक bundle (एक फ़ाइल) के रूप में एक क्लोन रेपो, जहां मैं भी धक्का सकता है, लेकिन एक यूएसबी कुंजी (कि जिस तरह से मैं भी एक बैकअप जो इंटरनेट का उपयोग पर निर्भर नहीं करता है)
पर स्थित

तो एकल विकास के लिए भी, क्लोनिंग समझ में आती है बशर्ते इसमें केवल आपके स्थानीय डेस्कटॉप, लेकिन कुछ बाहरी भंडारण शामिल न हों।

+0

मुझे नंगे रेपो के बारे में पता नहीं था। धन्यवाद। –