2011-11-08 12 views
6

संकट हमारी कंपनी में हम VS 2010 का उपयोग कर हमारे सिस्टम मॉडल करने के लिए, तथाकथित मॉडलिंग परियोजनाओं में शुरू कर दिया है। ये TFS2010 स्रोत नियंत्रण के तहत रखा जाता है।मॉडलिंग परियोजना

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

  1. वास्तुकार एक मौजूदा आरेख बाहर 1 चेक और थोड़ी देर के लिए उस पर काम करता है
  2. वास्तुकार 2 एक नया चित्र कहते हैं और कुछ समय के लिए उस पर काम करता है अपने नए चित्र
  3. वास्तुकार में
  4. वास्तुकार 2 चेकों मॉडलिंग प्रोजेक्ट के लिए अपने परिवर्तन में 1 चेकों
  5. वास्तुकार 2 फिर से अपने चित्र को खोलता है, केवल खोजने के लिए है कि यह सभी तत्व गायब होने पर!

मैं इस तरह समझ गए हैं के रूप में, समस्या यह है कि वास्तुकला परियोजना कई xml फ़ाइलें पर आधारित है, और ModelDefinition/Architecure.uml बुलाया xml का विशेष रूप से एक महत्वपूर्ण विशाल हिस्सा में। इसमें मॉडलिंग प्रोजेक्ट में आरेखों के बारे में बहुत सारी जानकारी है। जब कई लोग एक साथ इस फ़ाइल में कई बदलाव करते हैं, तो उपकरण (टीएफएस, वीएस) स्वचालित रूप से आवश्यक विलय को संभाल नहीं लेता है, और हमें बड़ी सहमति के मुद्दों के साथ छोड़ दिया जाता है।

मेरी परिदृश्य में

तो, क्योंकि Architecture.uml कि वास्तुकार 1 में जाँच तत्वों कि वास्तुकार 2 जोड़ा बारे में कुछ पता नहीं है, इन तत्वों ओवरराइट या अन्यथा बर्बाद कर दिया है।

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

तो, हमारे वर्तमान 'समाधान' विशेष चेक बहिष्कार का उपयोग कर काम करने के लिए है। तो एक समय में केवल एक वास्तुकार काम कर सकता है!

मुझे उम्मीद थी कि किसी को यह करने के लिए एक बेहतर समाधान है, जो हमें और अधिक प्रभावी ढंग से काम करने की अनुमति देता के साथ आया था।

उत्तर

2

& को विभाजित करने का प्रयास करें: क्या यह संभव है कि प्रत्येक आर्किटेक्ट अपनी व्यक्तिगत शाखा & पर काम करता है तो सब कुछ 'ट्रंक' में विलय हो जाता है?
संघर्ष इन विलय के दौरान दिखाई देना चाहिए।


संपादित
आप एक XML- विशिष्ट उपकरण लोगों here प्रस्तुत की तरह काम कर सकता है,।
ऐसा करके, आप शाखाओं-प्रति-वास्तुकार दृष्टिकोण रखना चाहिए, लेकिन इसके बजाय एक भी कदम TFS मर्ज आप कर सकते थे का उपयोग करने का:

  • अपने 'शाखा' फ़ोल्डर & के बीच एक निर्देशिका तुलना प्रदर्शन करना अपने ' ट्रंक 'फ़ोल्डर। प्रत्येक मिली फ़ाइल निम्नानुसार विलय का विषय है।
  • आलेख में प्रस्तुत किए गए टूल में से किसी एक का उपयोग करके प्रत्येक मिली फ़ाइल को अपने 'शाखा' फ़ोल्डर में मर्ज करें। मैंने Altova DiffDog का उपयोग किया है, यह बहुत अच्छा है - लेकिन एक उच्च पुरस्कार पर आता है।
  • जांचें कि सब कुछ ठीक है, फिर 'शाखा' पर प्रतिबद्ध करें।
  • अब टीएफएस-विलय के साथ 'ट्रंक' में विलय करें जो अब एक मामूली विलय होना चाहिए।
+0

उत्तर देने के लिए धन्यवाद। यह सुनिश्चित करेगा कि किसी भी व्यक्ति को ध्यान में रखे बिना कोई तत्व खो जाए। हालांकि, मैं फ़ाइल को मैन्युअल रूप से मर्ज करने से बचने की उम्मीद कर रहा था, क्योंकि यह एक एक्सएमएल फ़ाइल है। यह मेरा अनुभव है कि डिफ़ॉल्ट विलय उपकरण जो टीएफएस 2010 के साथ आता है वह खराब रूप से एक्सएमएल फाइलों को संभालने के लिए सुसज्जित है, उदाहरण के लिए एक चले गए तत्व को coflict के रूप में पहचाना जा सकता है हालांकि यह वास्तव में नहीं है; यह एक गैर-आदेशित सूची में बस स्थान बदल गया है। हालांकि मैं इनपुट की सराहना करता हूं, और मैं इसे अपनी टीम में सम्मेलन के लिए ले जाऊंगा। मैं अब यह स्वीकार करने का इंतजार करूँगा कि यह देखने के लिए कि क्या किसी और ने इस दुःस्वप्न का सामना किया है और हल किया है :) – havardhu

+0

मैं पूरी तरह से "एक्सएमएल को मैन्युअल रूप से विलय करने से बचने की उम्मीद" से सहमत हूं। बेहतर तरीके से प्रतीक्षा करें :) – pantelif

+0

आपके संपादन के लिए धन्यवाद, मेरा मानना ​​है कि इससे प्रक्रिया में थोड़ा सुधार हो सकता है। एक उचित एक्सएमएल विलय उपकरण का उपयोग कर ट्रंक को एकीकृत करने के लिए सही दिशा में एक कदम होना चाहिए :) – havardhu

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