2008-09-16 10 views
11

मैं अपनी शाखाओं को मैन्युअल रूप से ट्रैक करने और मेरे भंडार में विलीन होने के बीमार और थक गया हूँ! यह बहुत त्रुटि प्रवण है। ऐसी दुनिया में जहां हर किसी को नकल को कम करने और सबकुछ स्वचालित करने का विचार मिलता है, तो सबवर्सन ब्रांचिंग/विलय का मानना ​​है कि यह 80 के दशक से बाकी है। विचलन के लिए एक अच्छा विकल्प क्या है जिसमें वितरित एससीएम प्रतिमान की जटिलता को जोड़ने के बिना उत्कृष्ट ब्रांचिंग और विलय समर्थन है? आदर्श रूप से यह मुफ़्त होगा, लेकिन अगर मुझे कुछ नकद खोलना है तो शायद यह पर्याप्त हो सकता है कि यह पर्याप्त है।एक अच्छा, गैर-वितरित, विचलन के विकल्प क्या है जिसमें उत्कृष्ट ब्रांचिंग और विलय समर्थन है?

+2

जिज्ञासा से बाहर, आप एक केंद्रीकृत प्रणाली को एक वितरित व्यक्ति पर क्यों चाहते हैं? आप एक केंद्रीकृत वर्कफ़्लो अनुकरण करने के लिए कुछ डीवीडी सेट अप कर सकते हैं। गिट और बाज़ार दोनों वसंत इस के लिए दिमाग में हैं। – baudtack

उत्तर

3

वितरित समाधानों में से कोई भी। गिट, Mercurial आदि मेरी प्राथमिकता गिट होगा।

2

git

मैं इसके साथ प्यार में गिर गए हैं।

7

क्या आपने गिट जैसे वितरित संस्करण नियंत्रण में देखा है? प्रत्येक "चेकआउट" अनिवार्य रूप से एक शाखा है ... यह स्रोत नियंत्रण के बारे में सोचने का एक अलग तरीका है।

गिट मुक्त है, जो लिनस टोरवाल्ड्स द्वारा बनाया गया है, और लिनक्स (पाठ्यक्रम की कई अन्य परियोजनाओं के बीच) के लिए उपयोग किया जाता है।

+2

उन्होंने गैर-वितरित कहा। :) –

+2

यह उत्तर मूल प्रश्न संपादित करने से पहले पोस्ट किया गया था – Luke

6

Perforce एक उत्कृष्ट उपकरण है, लेकिन 2 उपयोगकर्ताओं से अधिक यह आपको लागत देगा क्योंकि यह पेशेवरों के लिए है। हम इसे एक भारी भारी शाखा योजना (मुख्य विकास के दौरान प्रति विशेषता 1 शाखा) के साथ उपयोग करते हैं और यह अच्छी तरह से काम करता है। माइक्रोसॉफ्ट द्वारा उपयोग की जाने वाली "स्पाइडर वेब" शाखा की तरह (जो कि पर्सफोर्स के संशोधित पुराने संस्करण का उपयोग करती है), लेकिन अब मुझे कहानी ऑनलाइन नहीं मिल रही है।

+0

पर्सफोर्स उपकरण मुफ़्त हैं (पी 4 वी) लेकिन उपयोगकर्ता लाइसेंस महंगा हैं! –

1

मैंने क्लीयरकेस का बहुत उपयोग किया है। जब तक आप अक्सर अपने विलय कर रहे हैं, यह बहुत आसान हो सकता है और पृष्ठभूमि में नौकरियां चलाने में भी संभव है। मर्ज विवाद होने पर आपको हस्तक्षेप करने की आवश्यकता है।

हालांकि, यह महंगा है और कुशल क्लीयरकेस प्रशासकों को ढूंढना मुश्किल हो सकता है।

+0

व्यक्तिगत रूप से आप के लिए कोई अपराध नहीं है, लेकिन मुझे ClearCase से नफरत है! हमने इसे अपनी आखिरी कंपनी में इस्तेमाल किया, और एसवीएन ताजा हवा का सांस था! मैं चेकआउट/संशोधित/चेकइन पद्धति, और परमाणु जांचकर्ता SUCKS की कमी नहीं खड़ा कर सकता! –

+0

मैं वास्तव में चेकआउट/संशोधित/चेकइन दृष्टिकोण पसंद करता हूं, लेकिन मैं स्वीकार करूंगा कि ClearCase की समस्याएं हैं। एक वैन या वीपीएन पर प्रदर्शन भयानक है क्योंकि वे एक बहुत शोर प्रोटोकॉल का उपयोग करते हैं। यह सीसीआरसी में पता रहा है और मेरा मानना ​​है कि सुविधा निकट भविष्य में मुख्य उत्पाद में जाएगी। –

0

गिट - http://git.or.cz/ (मुझे गिट, महान @ शाखाकरण और वितरित विकास का बहुत शौक है) - http://github.com/ एक शानदार कामकाजी उदाहरण है।

0

Git, मर्क्युरियल, बाजार, Darcs

1

ख़ामख़ाह के लिए 2 उपयोगकर्ताओं के लिए स्वतंत्र है।

मैं 100% निश्चित नहीं हूं कि आप क्या उम्मीद कर सकते हैं/स्वचालित होना चाहिए, लेकिन प्रतिभा बहुत उच्च गुणवत्ता है। आप शाखाओं को आसानी से बना और बनाए रख सकते हैं, और आप आसानी से विलय कर सकते हैं। चेरी को एक शाखा में किए गए विशिष्ट परिवर्तनों को चुनना काफी आसान है, और उन्हें एक उच्च डिग्री स्वचालन के साथ शाखा में विलय करें।

2

क्या आपने कभी खुद से पूछा था कि आपके पास इतनी सारी शाखाएं/मर्ज ऑपरेशन क्यों हैं? क्या आपकी विकास प्रक्रिया को सरल बनाने का कोई तरीका है?

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

+0

यह कुछ डेवलपर भूमिकाओं के लिए काम कर सकता है, लेकिन सभी के लिए नहीं। टीम पर डेवलपर्स हो सकते हैं, जिन्हें अक्सर मदद करने या कुछ करने का प्रयास करने के लिए कहा जाता है। सबवर्सन में आपके वर्कस्पेस को साफ रखने का कोई उचित तरीका नहीं है। गिट का उपयोग करके आप अपने परिवर्तनों को दूर कर सकते हैं, या एक नई स्थानीय शाखा/समस्या – jrudolph

0

मुझे शायद इसके लिए फ्लेम किया जा रहा है, लेकिन यदि आप एक मुफ्त उत्पाद के लिए बाहर नहीं हैं तो एमएस टीम फाउंडेशन सर्वर एक लायक है। अन्य एमएस उत्पादों के विपरीत जो नामहीन रहेंगे स्रोत नियंत्रण ठोस और पूरी तरह कार्यात्मक है।आईडीई एकीकरण, स्वचालित निर्माण/परीक्षण इंजन और कार्य प्रबंधन कार्यक्षमता के साथ संयोजन और यह बहुत बढ़िया है। बेशक, यह कंपनियों के लिए लक्षित है और सूट की कीमत है।

नोट: यदि आप मुख्य रूप से विजुअल स्टूडियो में विकसित नहीं होते हैं तो मैं इससे परेशान नहीं होगा।

25

क्या आपने सबवर्जन 1.5 में अपग्रेड किया है? इसमें स्वचालित मर्ज ट्रैकिंग शामिल है। यह आपकी समस्या का समाधान कर सकता है। ऐसा लगता है कि आप उपकरण से पहले ही परिचित हैं और यह मुफ़्त है। इसलिए, यदि आप अपने वर्तमान समाधान को 1.5 तक अपग्रेड करते हैं तो आपके पास लगभग कोई सीखने की वक्र और शून्य लागत नहीं होगी - साथ ही आपको अपने मौजूदा कोड को नए स्रोत कोड नियंत्रण प्रणाली में पोर्ट करने के दर्द से गुजरना पड़ेगा।

+0

आईएमएचओ शुरू कर सकते हैं, svn 1.5 की मर्ज ट्रैकिंग svnmerge.py से भी बदतर है। गिट का सुझाव देने वाले सभी उत्तरों को +1 करें, इसकी डीवीसीएस सुविधाओं को अनदेखा करें। –

+1

मेरे अनुभव में एसवीएन 1.5 में विलय और विलय ट्रैकिंग के संबंध में कुछ मोटे धब्बे थे, लेकिन जैसा कि मैंने इसे लिखा है, अब हम 1.7.x श्रृंखला पर हैं और विलय अब बहुत बेहतर है। –

0

यह एसवीएन के बजाय सीवीएस के विकल्पों के मामले में तैयार किया गया है, लेकिन कोई फर्क नहीं पड़ता - इसमें अन्य गैर-वितरित लोगों सहित कई विकल्प सूचीबद्ध हैं। http://better-scm.berlios.de/alternatives/

0

बाजार, उबंटू के रचनाकारों द्वारा।

http://bazaar-vcs.org/

क्यों बाज़ार चुनें?

http://bazaar-vcs.org/BzrWhy

+0

सबवर्सन के साथ बाज़ार का उपयोग करने की संभावना भी है http://bazaar-vcs.org/BzrForeignBranches/Subversion – Mauli

5

मैं भी सबवर्सन के पुराने संस्करणों में इन सीमाओं के बीमार था। फिर भी मेरी कंपनी में कोई और शाखाकरण और विलय का उपयोग नहीं करता है। उनमें से प्रत्येक, एक नई सुविधा की कोशिश करते समय, एक और चेकआउट, हैक-हैक-हैक मिला और खराब होने पर इसे छुटकारा पा लिया - अच्छा होने पर प्रतिबद्ध। कभी-कभी उन्होंने कुछ बुरा किया;)

तो मैंने गिट + svn का उपयोग करना शुरू कर दिया है। मतलब: मेरे पास svn चेकआउट है और इस निर्देशिका में मैंने गिट शुरू कर दिया है। अब मेरे पास तेज विलय और शाखाकरण है और मैं किसी अन्य को बाधित नहीं करता हूं। अगर मुझे नई सुविधा एक्स का प्रयास करने की ज़रूरत है, तो बस शाखा/चेकआउट/हैक-हैक। अगर मुझे अब हमारे एसवीएन रेपो से कुछ महत्वपूर्ण अपडेट लेने की आवश्यकता है: गिट स्टैश, गिट चेकआउट मास्टर, एसवीएन अपडेट, गिट प्रतिबद्ध-ए, गिट चेकआउट फीचर-एक्स, गिट रिबेस, गिट स्टैश लागू (यह सब क्योंकि गिट-एसवीएन नहीं है विंडोज पर काम)।

बहुत सारे ऑपरेशन की तरह दिखता है लेकिन वे तेज़ हैं। मेरा मतलब वास्तव में तेज़ है। और मुझे लचीलापन की ज़रूरत है (देखें my article on git + visual studio)।

मुझे लगता है कि बाज़ार समान चीजें कर सकता है और एक चीज़ पर बेहतर हो सकता है: यह आसानी से non-distributed, central-repository based development का समर्थन कर सकता है।

1

एक बात जिसका अभी तक उल्लेख नहीं किया गया है यह है कि same centralized manner that you're used to with Subversion में गिट का उपयोग करना पूरी तरह से संभव है। यह वास्तव में सॉफ्टवेयर का एक उत्कृष्ट टुकड़ा है।

0

बस डैरेनड में जोड़ना - विंडोज़ के लिए वास्तव में एक अच्छा सबवर्जन सर्वर उत्पाद है जो निःशुल्क है और जीवन को सपना बनाता है - VisualSVN Server। यह संकुल नवीनतम सबवर्जन एक एकल एमएसआई इंस्टॉलर में निर्मित करता है और एक बहुत ही उपयोगी प्रबंधन कंसोल में जोड़ता है।

-1

क्या आपको लगता है कि जीआईटी जैसे डीवीसीएस के बारे में जटिल है? यह कुछ तरीकों से आसान है: कोई क्लाइंट/सर्वर नहीं, किसी अन्य स्थान पर काम करने वाले डीआईआर के साथ एक स्थान पर कोई रेपो नहीं है, उपयोगकर्ता प्रबंधन अंतर्निहित नहीं है (अगर आपको इसकी आवश्यकता है तो एसएसएच का उपयोग करें)। जिम पल्स ने कहा, यदि आप चाहते हैं तो आप डीवीसीएस को गैर-वितरित जैसे उपयोग कर सकते हैं। मैं एक व्यक्ति परियोजनाओं के लिए जीआईटी का उपयोग करता हूं, यहां तक ​​कि कुछ ही हफ्तों तक चलते हैं।Tortoise की तरह बिल्कुल कुछ भी नहीं है, लेकिन gitk, qgit, और git-gui उन कार्यों के लिए बेहतर हैं जो मैंने एसवीएन के साथ देखा है। मैं guis पसंद करते थे, लेकिन अब मैं गिट कमांड लाइन का बहुत शौकिया हूँ - लेकिन कुछ सुधारों के लिए easygit की जांच करें।

3

मैं Perforce दुकान से एक सबवर्जन शॉप में आया और पेर्स के पास बड़ी शाखाओं और विलय समर्थन को याद किया। तो, पर्सफोर्स मेरी पहली सिफारिश होगी लेकिन फिर पैसे खर्च होंगे :)।

सबवर्सन 1.5 इसके मर्ज ट्रैकिंग समर्थन के लिए वादा करता है लेकिन इसे आधारभूत के रूप में चिह्नित किया गया है और ऐसा लगता है कि इसमें कम से कम विलय समर्थन होगा जो मैं जल्द ही स्वीकार करने के इच्छुक हूं (यानी पर्सफोर्स जैसी)।

तो, मैं एक वितरित VCS की ओर झुकाव रहा हूँ, विशेष रूप से बाजार:

  1. शाखाओं में बंटी और काम विलय असली अच्छी तरह से और तरीकों से मैं
  2. यह एक centralized workflow
  3. Supports Subversion branches, working copies, and repositories साथ इस्तेमाल किया जा सकता उम्मीद । इसका मतलब है कि मेरी टीम बाजार का उपयोग ऐसे बड़े संगठन के भीतर कर सकती है जो सबवर्सन का उपयोग करती है और अभी भी उनके साथ कोड साझा करती है।
3

आपको Accurev को देखना चाहिए। यह इंगित करता है और नई धाराओं (जैसे शाखाओं, लेकिन बेहतर आईएमओ) के निर्माण पर क्लिक करता है, और धाराओं के माध्यम से बहने वाले कोड की पूरी अवधारणा बहुत कम दर्दनाक और अक्सर एक कार्य विलय कर देती है। प्रशासन करने के लिए यह बहुत आसान है, इसमें 3-उपयोगकर्ता का मुफ्त लाइसेंस है, और इसमें

+0

+1 हम अपनी दुकान में AccuRev का उपयोग नहीं करते हैं, लेकिन मेरी इच्छा है कि हमने किया। स्ट्रीम-आधारित प्रतिमान पहले ग्रोक करना कठिन होता है, लेकिन एक बार जब मुझे मिल गया, तो मैंने अचानक उन सभी चीजों को देखा जो मैं अपने वर्तमान सिस्टम से नहीं कर सकता :( – Benjol

1

Plastic SCM ब्रांचिंग और विलय करने के बारे में सब कुछ आसान है। इसकी जीयूआई जांचें और अन्य विकल्पों के साथ तुलना करें।

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