संक्षेप में, क्योंकि विलय अक्सर कुछ गलत होने के लिए एक और जगह है, और इसे केवल एक बार गलत तरीके से जाने की जरूरत है ताकि लोग इसे फिर से निपटने से डरें (एक बार दो बार शर्मीले काटे, यदि आप करेंगे)।
तो, मान लें कि हम एक नई खाता प्रबंधन स्क्रीन पर काम कर रहे हैं, और यह पता चलता है कि नए खाता वर्कफ़्लो में खोजा गया बग है। ठीक है, हम दो अलग-अलग रास्ते लेते हैं - आप खाता प्रबंधन समाप्त करते हैं, और मैं नए खातों के साथ बग को ठीक करता हूं। चूंकि हम दोनों खातों के साथ काम कर रहे हैं, हम बहुत समान कोड के साथ काम कर रहे हैं - शायद हमें कोड के समान टुकड़ों को भी समायोजित करना था।
अब, इस समय हमारे पास सॉफ्टवेयर के दो अलग-अलग लेकिन पूरी तरह से काम करने वाले संस्करण हैं। हम दोनों हमारे बदलावों के लिए प्रतिबद्ध हैं, हम दोनों ने हमारे कोड का कर्तव्यपूर्वक परीक्षण किया है, और स्वतंत्र रूप से हम बहुत आश्वस्त हैं कि हमने एक भयानक काम किया है। अब क्या?
खैर, यह विलय करने का समय है, लेकिन ... बकवास, अब क्या होता है? हम बहुत अच्छी तरह से सॉफ्टवेयर के दो कामकाजी सेटों से एक में जा सकते हैं, एकीकृत, बुरी तरह से टूटे हुए नए बग्गी सॉफ़्टवेयर के टुकड़े जहां आपका खाता प्रबंधन काम नहीं करता है और नए खाते टूट गए हैं और मुझे नहीं पता कि क्या पुराना बग अभी भी है ।
हो सकता है कि सॉफ्टवेयर स्मार्ट था और उसने कहा कि एक संघर्ष था और जोर देकर कहा कि हम इसे मार्गदर्शन देते हैं। ठीक है, बकवास - मैं इसे करने के लिए बैठ जाता हूं और देखता हूं कि आपने कुछ जटिल कोड जोड़े हैं जिन्हें मैं तुरंत नहीं समझता हूं। मुझे लगता है कि यह मेरे द्वारा किए गए परिवर्तनों के साथ संघर्ष करता है ... मैं आपसे पूछता हूं, और जब आपको एक मिनट मिलता है तो आप चेक करते हैं और आपको मेरा कोड दिखाई देता है जिसे आप समझते हैं। हम में से एक या दोनों को बैठने के लिए समय निकालना होगा, एक उचित मर्ज बाहर करना होगा, और संभवत: पूरे खतरे को फिर से सुनिश्चित करना होगा ताकि हम इसे तोड़ न सकें।
इस बीच 8 अन्य लोग सभी उदासियों की तरह कोडिंग कर रहे हैं, मैंने कुछ छोटे बग फिक्स किए हैं और उन्हें जमा करने से पहले मुझे पता था कि हमारे पास एक मर्ज संघर्ष था, और आदमी को यकीन है कि ब्रेक लेने के लिए एक अच्छा समय लगता है, और शायद आप दोपहर के लिए बंद हैं या एक बैठक में या जो कुछ भी अटक गया है। शायद मुझे बस छुट्टी लेनी चाहिए। या करियर बदलते हैं।
और इसलिए, इस दुःस्वप्न से बचने के लिए, कुछ लोग प्रतिबद्धता से बहुत डरते हैं (नया क्या है, अमीर)? हम स्वाभाविक रूप से इस तरह के परिदृश्यों में जोखिम का सामना कर रहे हैं - जब तक हमें नहीं लगता कि हम चूसते हैं और वैसे भी इसे खराब करने जा रहे हैं, जिस स्थिति में लोग लापरवाह परित्याग के साथ अभिनय करना शुरू करते हैं। आह
तो यह तूम गए वहाँ। हां, आधुनिक प्रणालियों को इस दर्द को कम करने के लिए डिज़ाइन किया गया है, और इसे आसानी से बाहर निकालने और रीबेस और डिबेस और फ़्रीबेस और हैंगलाइड और सभी को सक्षम किया जाना चाहिए।
लेकिन यह सब अधिक काम का है, और हम सिर्फ माइक्रोवेव पर बटन को पुश करना चाहते हैं और इससे पहले कि हम एक कांटा खोजने के लिए समय निकाल कर 4-कोर्स भोजन करते हैं, और यह सब बहुत ही बेकार लगता है - कोड काम है, यह उत्पादक है, इसका सार्थक, लेकिन इनायत से एक मर्ज को संभालना अभी मायने नहीं रखता।
प्रोग्रामर, एक नियम के रूप में, एक महान कार्यशील मेमोरी विकसित करना है, और फिर एक समस्या को समाप्त करने के तुरंत बाद उन सभी को कबाड़ और चर नामों और स्कूपिंग को भूल जाने की प्रवृत्ति है, और एक मर्ज संघर्ष (या इससे भी बदतर) को संभालना है गलत तरीके से संभाला गया मर्ज) आपकी मृत्यु दर की याद दिलाने वाला एक निमंत्रण है।