2010-11-05 10 views
25

मैं अभी एक नई कंपनी में शामिल हो गया हूं और फिलहाल हम माइक्रोसॉफ्ट सोर्ससेफ का उपयोग हमारे भंडार के रूप में कर रहे हैं। सेटिंग्स आदर्श नहीं हैं और यह गर्दन में एक बड़ा दर्द साबित हो रही है।Mercurial TFS से बेहतर/बदतर किस तरीके से है?

मैंने हाल ही में Mercurial का उपयोग किया है और सोचा कि यह आश्चर्यजनक था, इसलिए मैं उस पर स्विच करने की वकालत कर रहा हूं, लेकिन ऐसा लगता है कि कंपनी के पास पहले से ही एक टीम फाउंडेशन सर्वर लाइसेंस है और इसके बजाय इसका उपयोग करना चाहता है।

क्या कोई मुझे उन बिंदुओं की एक सूची दे सकता है जहां कोई दूसरे से बेहतर है? मैंने टीएफएस का उपयोग नहीं किया है और इसलिए मुझे नहीं पता कि यह क्या अच्छा/बुरा है।

+7

एक नए कर्मचारी के रूप में मैं टीम को अपने तरीकों के अनुरूप होने वाली हर चीज़ को बदलने की कोशिश करने में अपना समय नहीं व्यतीत करूंगा। शायद कुछ चीजें करने में कुछ महीनों खर्च करें, यह देखते हुए कि चीजें कैसे काम करती हैं, कुछ विश्वास पैदा करती हैं और कुछ उपलब्धियां हासिल करती हैं। यह देखते हुए कि आप यहां पूछ रहे हैं, ऐसा लगता है कि आप इस परिवर्तन का सुझाव देने के लिए वास्तव में उपयुक्त नहीं हैं। इसके अलावा आपका प्रश्न अग्रणी है और मुझे लगता है कि तर्कवादी है। –

+2

@apphacker: मैं इसे SourceSafe (जो हर किसी से नफरत करता है!) पर वकालत कर रहा है, टीएफएस पर नहीं (जिसे मैं कुछ भी नहीं जानता)। मैं सिर्फ टीएफएस बनाम मर्कुरियल के पेशेवरों और विपक्ष को जानना चाहता था, इसलिए एक बेहतर विचार होगा कि एक बार जब हम टीएफएस पर स्विच करेंगे तो एक जीवन कैसा होगा (एक निर्णय पहले से ही किया जा चुका है और मैं इसे बदलने के लिए पर्याप्त वरिष्ठ नहीं हूं) । –

उत्तर

33

आप सीधे टीएफएस और डीवीसीएस की तुलना नहीं कर सकते हैं।

आपकी कंपनी TFS की ओर leans, तो उस other features TFS comes with की वजह से हो सकता है (डेटा संग्रह, रिपोर्टिंग, और इस परियोजना पर नज़र रखने, सभी अच्छी तरह से Microsoft उत्पादों के साथ एकीकृत)


शुद्ध संस्करण नियंत्रण तरफ, Team Foundation Server 2010, इसकी टीम फाउंडेशन वर्जन कंट्रोल (टीएफवीसी) 2010 के साथ, शाखाओं को प्रथम श्रेणी के नागरिक के रूप में पेश करता है।
Team Foundation Server and branching characteristics, compared to others देखें।

मुझे अभी भी उनके ब्रांचिंग मॉडल मर्कुरियल या गिट की तुलना में अधिक जटिल पाते हैं।
देखें TFS2010 Branching into a subfolder of another branch बनाम Guide to Branching Model in Mercurial (और इस SO question जो भी DVCS साथ मर्ज और शाखाओं का विवरण)

कहा जा रहा है, यह एक CVCS (केन्द्रीकृत VCS) बनी हुई है, जिसका अर्थ है आप एक DVCS साथ की तुलना में अलग काम कर रहे प्रक्रियाओं मिलती है: Describe your workflow of using version control (VCS or DVCS) देखना ।

true killer feature of a DVCS इसकी विलय क्षमता (किसी भी सीवीसीएस से सरल और तेज़) बनी हुई है। लेकिन introducing a DVCS in a corporate environment remains hard

+0

मुझे टीएफएस के संस्करण नियंत्रण पक्ष में दिलचस्पी है - यह अच्छी तरह से/बुरी तरह से क्या करता है? –

+0

@ जैक्सन: मैंने टीएफएस के वीसीएस पक्ष पर अपना जवाब पूरा कर लिया है। – VonC

+0

उत्कृष्ट - अतिरिक्त जानकारी के लिए धन्यवाद। –

8

मैं वितरित संस्करण नियंत्रण में स्विच करने के बहुत अच्छे कारणों की सूची के लिए सॉफ़्टवेयर http://hginit.com पर जोएल की सलाह देता हूं।

+4

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

6

मुझे टीएफएस के साथ कुछ मिलचास मिल गए हैं जो इसे अन्य सीवीसीएस से थोड़ा अलग बनाते हैं।

  • टीएफएस विजुअल स्टूडियो के बाहर उपयोग करना बहुत मुश्किल है। वीएस के अंदर भी भिन्न संस्करण किए जाते हैं। व्यक्तिगत रूप से मैं केवल कोड लिखने के लिए वीएस का उपयोग करना पसंद करता हूं।
  • हमारे पास डीएलएल और अन्य बाइनरी फाइलों के साथ बहुत सारे मुद्दे हैं जो नवीनतम संस्करण में अपडेट नहीं हो रहे हैं।
  • टीएफएस आपकी सभी फाइलों को संस्करण नियंत्रण के तहत केवल पढ़ने के लिए बनाता है। यह VS के बाहर फ़ाइलों को संशोधित करता है बहुत दर्दनाक। वास्तव में, यह अभी भी टीएफएस में हमारे निरंतर एकीकरण निर्माण में सिल्वरलाइट परियोजनाओं के साथ मुद्दों का कारण बन रहा है।
  • टीएफएस के लिए कमांड लाइन उपकरण कमांड लाइन से उपयोग करना आसान नहीं है।

पृष्ठभूमि (व्यक्तिगत रूप से, मैं कमांड लाइन का उपयोग करना चाहते): मेरी कंपनी SVN और TFS से बदल और मैं अपने पक्ष परियोजनाओं के लिए मर्क्युरियल/Git का उपयोग करें। मैंने इस blog about using Mercurial with TFS का भी पालन किया और इसने टीएफएस के साथ अपना काम अधिक आनंददायक बना दिया है।

+1

अपने अंक पर छूने के लिए। 1) आप कोड लिखने के लिए टीएफएस का उपयोग कैसे कर सकते हैं? क्या आपका मतलब विजुअल स्टूडियो है? 2)। डीएलएल की जांच नहीं की जानी चाहिए, लेकिन स्रोत 3 से बनाया गया है)। टीएफएस 2012 स्थानीय वर्कस्पेस के लिए अनुमति देता है, इसलिए कोई और "दुष्ट" स्थानीय फाइलें 4)। आईएमओ कमांड लाइन यूटिल एक ही श्रेणी में हैं .bat फाइलें, जो केवल प्रोग्रामर के लिए रैपर लिखने के अवसर हैं। – hanzolo

+0

1) धन्यवाद, वह एक टाइपो था। 2) डीएलएल जहां तीसरे पक्ष के लिए nunit और nhibernate की तरह libs। 4) मैं वर्तमान में कमांड लाइन से गिट का उपयोग करता हूं और इसे प्यार करता हूं। मैंने रेक कार्यों और बैच फ़ाइलों में टीएफएस कमांड लाइन को लपेट लिया था, इसलिए यह वास्तव में प्रयोग योग्य था; हालांकि, यह सेटअप करने के लिए बहुत दर्दनाक था। – wusher

3

टीएफएस एक आवेदन लाइफसीलस प्रबंधन उपकरण है न केवल एक स्रोत कोड भंडार/संस्करण प्रणाली।

यह की ताकत के हैं:

-It's natural integration into Visual Studio (+100) 
-It's Full App Lifecycle support from Work Item through Q/A acceptance. 
-It's integration with MS Project/Sharepoint, and all the other 
hoo-ha's you get 
-And now TFS 2012 has added support for "Local Workspaces" which allows 
    for off-line working, but also allows "Server Workspaces" which is 
    similiar to TFS 2010. 
-Diff on every Check-in/Commit 

यह स्रोत नियंत्रण पक्ष भी बहुत मजबूत व्यक्तिगत रूप से, जैसा कि मैंने पूरे इतिहास में देख सकते हैं, कोड खोना नहीं, और मेरे कोड नहीं है, तथापि, जब तक " पर कदम रखा"। मैं एक डर्न दे सकता था।

मैं 2008 से टीएफएस का उपयोग कर रहा हूं और सुधार के नवीनतम दौर में उनके उत्पादों को विकसित करने और उद्योग के परिवर्तनों को बनाए रखने के लिए माइक्रोस्कोफ्ट प्रतिबद्धताओं का प्रदर्शन किया गया है। व्यक्तिगत रूप से मैं इसे प्यार करता हूं, लेकिन मैं माइक्रोसॉफ्ट पर्यावरण में रहता हूं (जिसे मैं भी प्यार करता हूं) .. इसके बाहर, यह हर किसी की जरूरतों के साथ काम नहीं कर सकता है।

अब, Mercurial पेशेवर (बिटबकेट/Mercurial/tortoiseHG/VisualHG) के साथ काम करने में कुछ दिन, मुझे कहना है कि उपकरण थोड़ा दिनांक लगते हैं। विजुअल स्टूडियो के साथ एकीकरण ल्यूक गर्म कॉफी (हो-हम) जैसा है, और एक्सप्लोरर एकीकरण मुझे वापस "अच्छे ओल दिनों" में ले जाता है जब मैं भाग्यशाली था कि विजुअल सोर्स सेफ पर काम नहीं कर रहा था।

ध्यान देने योग्य एक और बात यह है कि विजुअल सोर्स सेफ में टीएफएस में माइग्रेट करने में आसानी है, यह काफी दर्द रहित है .. मैंने हाल ही में अपनी आखिरी कंपनियों को वीएसएस में पूरे इतिहास को टीएफएस में स्थानांतरित कर दिया और इसमें कुछ कमांड लाइन यूटिल और रातोंरात सभी परिवर्तन इतिहास को स्थानांतरित करने के लिए। माइग्रेशन कितना आसान था, इस पर मैं चौंक गया था (जहां मेरे सहयोगियों) ने शुरुआत से ही सभी इतिहास को रखा था (0 शक्तियों के अनुरोध के द्वारा)

मैं निश्चित रूप से पूर्वाग्रहित हूं जो एमएस टूल्स के साथ काम कर रहा है लंबे समय तक, लेकिन जब तक यह काम करता है तब तक स्रोत नियंत्रण के लिए बहुत कुछ नहीं है ..

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

स्रोत नियंत्रण के साथ शुरू, चश्मा के साथ अंत तक एमएस परियोजना में जन्म लिया है, स्वचालित से बंधा स्वीकृति परीक्षण से बंधा यूनिट टेस्ट से बंधा आइटम बनाता है और तैनाती

और अन्त में काम करने के लिए बंधे: जला नीचे/वेग चार्ट

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