2011-12-14 8 views
9

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

एक बार जब हम परिवर्तन/सुविधाओं के सेट के साथ काम करते हैं, तो हम विकास शाखा को अपडेट करते हैं, फिर हम उस शाखा को शाखा बीटा में कॉपी करते हैं। सभी नए विकास आदि के साथ विकास शाखा पर अभी भी विकास जारी है।

हमारे पास समस्या यह है कि अनिवार्य रूप से कोड बीटा में है, बग पाए जाते हैं। उन बग को विकास और बीटा शाखाओं दोनों में तय करने की आवश्यकता है। इस बीच विकासशील शाखा पर अधिक विकास किया गया है जो बीटा शाखा में नहीं है और नहीं होना चाहिए ताकि हम वास्तव में बीटा और विकास शाखाओं को विलय नहीं कर सकें? मैं वास्तव में उन दोनों परिवर्तनों के साथ व्यक्तिगत रूप से काम करने के लिए समय और परेशानी नहीं करना चाहता हूं जो दोनों पर लागू होता है।

तो मैं जो खोज रहा हूं वह गिट के साथ इस प्रकार के काम प्रवाह को प्रबंधित करने का सबसे अच्छा तरीका है।

धन्यवाद

उत्तर

6

चेक बाहर git-flow (aka: A successful Git branching model)। उत्पादन मास्टर शाखा से चलता है, वर्तमान रिलीज शाखा से विकास और बीटा से विकसित होता है (यदि कोई है तो)।

संपादित करें: इस उत्तर answer by Justin

+0

इस परियोजना में एक वर्ष से अधिक गतिविधि नहीं देखी गई है। एवीएच कांटा सुधार के गुच्छा के साथ वादा करता है: https://github.com/petervanderdoes/gitflow/wiki – angularsen

5

बेहतर तरीकों में से एक के रूप में ही दृष्टिकोण मैं एक समवर्ती देव-क्यूए रिलीज कार्यप्रवाह के लिए देखा है के लिए अंक "A successful Git branching model" है। आह मेरे लिए पल विकास शाखा में "रोल-अप" प्रतिबद्धता बनाने के लिए --no-ff का उपयोग था - यह सुविधाओं और बगफिक्स को प्रबंधित करने में आसान बनाता है।

0

ठीक है तो आप मास्टर (उत्पादन),

है आप मास्टर के आधार पर तो आप एक शाखा नाम का वर्णन है कि तुम क्या जोड़ना चाहते हैं के साथ मास्टर और शाखा चेकआउट कुछ विकास करने की जरूरत है। पूर्व सुविधा_123।
चेकआउट feature_123 और काम करते हैं, जोड़, प्रतिबद्ध, धक्का आदि ..

तो फिर तुम उत्पादन में कीड़े मिल जाए, आप एक शाखा का नाम का वर्णन है जो आपके द्वारा पूर्व issue_234 ठीक करने के लिए चाहते हैं के साथ मास्टर और शाखा की जाँच करें।
चेकआउट issue_234 और काम करते हैं, जोड़, प्रतिबद्ध, धक्का आदि ..

issue_234 के बाद तय की और काम करता है, चेकआउट मास्टर और issue_234
फिर, चेकआउट feature_123 के साथ विलय और issue_234 के साथ विलय।

मास्टर और फीचर शाखा दोनों में बग समस्या_234 अब तय है।
मार्टिन