एक सुविधा शाखा से उप-शाखा पर काम करने के लिए जिट ब्रांचिंग


12

हम वर्तमान में निम्न स्थिति में हैं, जहां एक सुविधा शाखा को एक उप-सुविधा शाखा के लिए शाखाबद्ध किया गया है (जैसे, एक ही सुविधा के लिए बैकएंड और फ्रंटेंड चीजों पर काम करना):

o 
|
o development
|\
| o feature-a
| |
| o
| |\
| | o feature-a-sub
| | |
| | |
|  \
|   o merged feature-a into feature-a-sub
|  /
o feature-a-sub merged into development
| |
| o feature-a with future work on it
|
o development

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

मेरे विचार में, यह समस्या पैदा करती है कि सुविधा-एक शाखा अब अप्रचलित हो गई है, क्योंकि सभी परिवर्तन फीचर-ए-उप में और फिर विकास में विलय हो गए हैं। इसके अलावा, फीचर-ए पर काम जारी है, जो भविष्य के मर्ज संघर्ष और बहुत सारे मैनुअल श्रम की ओर जाता है।

हमने गलत मोड़ कहां लिया, और कम परेशानी के साथ एक उचित वर्कफ़्लो कैसा दिखेगा?

जवाबों:


14

एक चाहिए केवल करने के लिए और माता पिता के शाखा से मर्ज करें। इसके लिए feature-a-sub, यह feature-aनहीं है development

दादा-दादी शाखा में विलय करने का मतलब है कि मूल शाखा को बनाया गया कारण पूरा नहीं किया गया है, और हाँ, जैसा कि यह उल्लेख करता है कि भविष्य की समस्याएं पैदा होती हैं जहां विकास जारी रहता है feature-aऔर developmentकोड लाइनों की वृद्धि हुई विचलन के लिए अग्रणी होता है और अधिक संघर्ष नीचे गिर जाते हैं। सड़क।

यह मान रहा था कि feature-a-subकोड में निर्भर है feature-a। यदि feature-a-subइसके बजाय स्वतंत्र था feature-a, तो इसे बिल्कुल भी ब्रांच नहीं किया feature-aजाना चाहिए था और इसके बजाय ब्रांच किया जाना चाहिए था (और विलय) development

अगर काम करने की feature-aज़रूरत feature-a-subहै (यह सुनिश्चित नहीं है कि यह feature-aबिना किसी मर्ज के जारी काम के रूप feature-a-subमें है), और feature-a-subसे स्वतंत्र था feature-a, feature-a-subइसके बजाय feature-bएक शाखा से होना चाहिए development, एक मर्ज वापस में developmentऔर फिर या तो एक मर्ज ( developmentया feature-bयदि एक नहीं होता) 'विकास से अन्य परिवर्तन नहीं करना चाहते) feature-a

वर्कफ़्लो या तो होना चाहिए:

o                                        
|                                        
o development                            
|\                                       
| o feature-a                            
| |                                      
| o                                      
| |\                                     
| | o feature-a-sub                      
| | |                                    
| | |                                    
| | |                                    
| | o merged feature-a into feature-a-sub
| |/                                     
| o feature-a-sub merged into feature-a  
| |                                      
| o feature-a with future work on it     
|                                        
o development 

या

o                                                  
|                                                  
o development                                      
|\                                                 
| \                                                
|  \                                               
|   o feature-a                                    
|\  |                                              
| b | feature-b                                    
| | |                                              
| | |                                              
| | |                                              
| b | feature-b complete                           
|/ \|                                              
o   o feature-b merged to development and feature-a
|   |                                              
|   o feature-a with future work on it             

संबंधित - ब्रांचिंग के दर्शन पर मेरा एक पसंदीदा पढ़ा : उन्नत एससीएम ब्रांचिंग रणनीतियाँ । जबकि श्वेत पत्र को केंद्रीकृत संस्करण नियंत्रण प्रणालियों को लक्षित किया जाता है, प्रत्येक शाखा की भूमिकाओं के पीछे के विचार यह सुनिश्चित करने में महत्वपूर्ण होते हैं कि आप समझ रहे हैं कि क्या चल रहा है और किसी भी शाखा के साथ आगे क्या किया जाना चाहिए इसके बारे में कारण हो सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.