2011-08-07 7 views
5

में काम कर रहे निर्देशिका बनाम परियोजनाओं को संपादित करें मैं लंबे समय से एक्लिप्स उपयोगकर्ता हूं लेकिन गिट/एजीट के लिए नया हूं। हाल ही में मैं एजीट का उपयोग करने की कोशिश कर रहा हूं क्योंकि मैं कई परियोजनाओं के साथ सहयोग करने के लिए गिटहब का उपयोग करना चाहता हूं। जिन परियोजनाओं पर मैं काम करना चाहता हूं वे ग्रहण-विशिष्ट प्रोजेक्ट नहीं हैं, लेकिन मैं अभी भी वर्कफ़्लो सेट करना चाहता हूं ताकि मैं ग्रहण में उन पर काम कर सकूं।ग्रहण

ऐसा लगता है एक साथ फिट करने के लिए जरूरत है कि चीजों की एक संख्या देखते हैं कि:

  • Git काम कर

    1. दूरस्थ भंडार (GitHub पर)
    2. स्थानीय भंडार (कहीं मेरी फाइल सिस्टम पर) निर्देशिका
    3. The Eclipse परियोजना है कि मैं में काम करने के लिए (ग्रहण परियोजना फ़ाइलें, Maven config की तरह स्रोत पेड़ के बाहर सामान सहित, फ़ोल्डर का निर्माण आदि) चाहते

    ये एक दूसरे से कैसे संबंधित हैं और मेरा वर्कफ़्लो क्या होना चाहिए?

    विशेष रूप से:

    • मैं वास्तव में एक स्थानीय भंडार की जरूरत है या मैं बस (SVN के साथ) की तरह दूरदराज के भंडार के साथ सीधे काम कर सकते हैं करते हैं?
    • क्या गिट काम करने वाली निर्देशिका ग्रहण परियोजना भी हो सकती है? या यह एक बुरा विचार है?
    • पुश/पुल/fetch आदि का मेरा वर्कफ़्लो सामान्य रूप से क्या होना चाहिए?
    • यदि मैं ग्रहण परियोजना में निर्भरता प्रबंधन के लिए मेवेन का उपयोग करता हूं, लेकिन सभी मैवेन-विशिष्ट सामान एससीएम के लिए प्रतिबद्ध नहीं होना चाहते हैं, तो यह काम कर सकता है?

    मान लीजिए कि मैं किसी ऐसे व्यक्ति से कुछ अच्छी सलाह के लिए मजाक कर रहा हूं जिसने सफलतापूर्वक यह काम किया है!

  • उत्तर

    5

    क्या मुझे वास्तव में स्थानीय भंडार की आवश्यकता है या क्या मैं सीधे रिमोट रिपोजिटरी (जैसे एसवीएन के साथ) के साथ काम कर सकता हूं?

    गिट स्थानीय भंडार पर काम करने और आवश्यक होने पर कहीं और धक्का देने के बारे में है।

    क्या गिट कार्यशील निर्देशिका भी ग्रहण परियोजना हो सकती है? या यह एक बुरा विचार है?

    यदि यह इस तरह से लाइन करता है, तो हाँ। इस तरह मैंने अपनी परियोजनाओं को प्रबंधित किया है।

    क्या धक्का के अपने कार्यप्रवाह// लाने खींच चाहिए आदि सामान्य रूप से हो सकता है?

    जब आप महसूस करते हैं कि आपने पर्याप्त काम किया है (कभी-कभी केवल 1) जो धक्का देने योग्य हैं। जब आप अन्य लोगों ने धक्का दिया है, तो आप खींचते हैं जब आप खींचते हैं।

    विभिन्न प्रकार के वर्कफ़्लो पर आधिकारिक दस्तावेज़ के लिए gitworkflows देखें।

    यदि मैं ग्रहण परियोजना में निर्भरता प्रबंधन के लिए मेवेन का उपयोग करता हूं, लेकिन सभी मैवेन-विशिष्ट सामान एससीएम के लिए प्रतिबद्ध नहीं होना चाहते हैं, तो यह काम कर सकता है?

    आमतौर पर आप केवल pom.xml प्रतिबद्ध करते हैं। कुछ और उपयोगकर्ता विशिष्ट सेटिंग है। हालांकि, अगर मैं आपके भंडार को क्लोन करता हूं और "एमवीएन संकलन" नहीं कर सकता, तो कुछ गड़बड़ है।

    +0

    +1 और धन्यवाद जेरेमी यह बहुत अच्छी सलाह है! बस एक त्वरित अतिरिक्त सवाल, यदि मैं जिस परियोजना का योगदान कर रहा हूं, वह मेवेन का उपयोग नहीं करता है (यानी उनके पास किसी कारण से pom.xml नहीं है), तो क्या यह अभी भी मेरे पक्ष में निर्भरताओं का प्रबंधन करने के लिए मेवेन का उपयोग करना संभव होगा pom.xml? या मैं अटक गया हूँ? – mikera

    +1

    हाँ, आप कर सकते हैं! आप प्रोजेक्ट को सामान्य मेवेन प्रोजेक्ट के रूप में सेट कर सकते हैं। हालांकि, मेरे पास '.gitignore' (जो आपको करना होगा) है जो विशेष रूप से किसी भी मेवेन-विशिष्ट फ़ाइलों और निर्देशिकाओं जैसे 'pomx.xml' और' target/'को अनदेखा करता है और आपको गलती से उन्हें करने से रोकता है। आप ग्रहण चीजें जैसे '.settings/',' .project', और'classpath' भी शामिल करना चाहेंगे। – Jeremy