मेरे अनुभव में, सीमित मामलों को छोड़कर जहां विशुद्ध रूप से स्थानीय सेटिंग्स शामिल हैं, सब कुछ स्रोत नियंत्रण में होना चाहिए। स्रोत नियंत्रण का नियम यह है कि जिन चीज़ों को धक्का दिया जाना चाहिए, वे उन लोगों से काम करने की अपेक्षा करें जो बाहर खींचते हैं। दुर्भाग्य से, ग्रहण अक्सर इस तरह की चीजों का कारण बनता है .classpath
:
<classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/Java SE 7"/>
तो मेरे मैक पर यह काम करता है, और शायद मैक पर किसी के पास एक ही जेआरई है, लेकिन यह किसी और के लिए काम नहीं करेगा।
इसके अलावा, इसका कोई आसान तरीका नहीं है। ग्रहण हमेशा इसमें जोड़ देगा। मैं चाहता हूं कि .classpath फ़ाइल वहां हो, क्योंकि हमारे लिबास फ़ोल्डर में कुछ 3rd पार्टी JAR हैं जहाँ हम संस्करण बनाने की परवाह करते हैं, इसलिए हम उन्हें वहाँ छोड़ देते हैं ताकि नए डेवलपर्स को उन्हें प्राप्त न करना पड़े। । हम एक प्रबंधित प्रणाली में जा रहे हैं, लेकिन फिर भी + प्रबंधित अप्रबंधित निर्भरता की जाँच कर ली है। इसका मतलब है कि सभी डेवलपर्स को केवल यह सुनिश्चित करना है कि दो निर्देशिकाएँ अपने में हैं .classpath
। लेकिन जब आप खींचते हैं तो हर बार अपना JRE ठीक करना बेहतर होता है और आपके द्वारा किए गए हर एक समय में .classpath में परिवर्तन होता है।
ग्रहण हालांकि आपके लिए कुछ अन्य अच्छी चीजें करता है। .Project फ़ाइल आमतौर पर उदाहरणों में समान होगी, इसलिए इसे शामिल करें। लेकिन ग्रहण के लिए स्रोत नियंत्रण के बारे में सबसे अच्छी बात यह है कि रन कॉन्फ़िगरेशन सेटिंग्स। रन कॉन्फ़िगरेशन डायलॉग में "कॉमन" टैब के तहत, डिबग और रन के लिए पसंदीदा सूचियों के तहत अपने सहयोगियों के लिए दिखाई देने वाले कॉन्फ़िगरेशन को सहेजें। मेरे लिए, .launch
फ़ाइलों का एक समूह .settings
निर्देशिका में जाता है, इसलिए हम सभी उनका उपयोग कर सकते हैं।
इसलिए मैं कहता हूं: .settings
लॉन्च कॉन्फ़िगर के लिए डायरेक्ट्री कंट्रोल में डायरेक्टरी जाती है (* .prefs को छोड़कर)
.classpath
बाहर रहता है
.project
में चला जाता है।