मर्ज प्रस्ताव

किसी ब्रांच के बदलावों को दूसरी ब्रांच तक पहुंचने से पहले समीक्षा के लिए भेजें।

अवलोकन

मर्ज प्रस्ताव एक ब्रांच के बदलावों को दूसरी में मर्ज करने के अनुरोध को रिकॉर्ड करता है और ऐसा होने से पहले किसी टीम सदस्य को डिफ़ देखने देता है। एजेंट का एडिट एक्सेस रखने वाला कोई भी व्यक्ति प्रस्ताव खोल सकता है, यहाँ तक कि ऐसी ब्रांच में भी जिसमें वे खुद मर्ज नहीं कर सकते। प्रस्ताव को मर्ज करने के लिए फिर भी टारगेट ब्रांच पर राइट एक्सेस चाहिए, इसलिए हर योगदानकर्ता को मर्ज अधिकार दिए बिना बदलाव को सुरक्षित ब्रांच तक पहुँचाने का यह तरीका है।

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

उपलब्धता

मर्ज प्रस्ताव अल्फ़ा में हैं। जब किसी एजेंट की कई ब्रांच पर एक साथ काम चल रहा हो, तो यह ट्रैक करना मुश्किल हो जाता है कि कौन-सी ब्रांच मर्ज के लिए तैयार और सुरक्षित है। मर्ज प्रस्ताव टीम को ब्रांच के बदलावों की समीक्षा और चर्चा करने, ब्रांचों के बीच टेस्ट पास रेट की तुलना करने और ब्रांच की नवीनतम बातचीत देखने के लिए एक जगह देते हैं।

अल्फ़ा एजेंट्स के लिए CI/CD-स्टाइल वर्कफ़्लो की दिशा में पहला कदम है, जो GitHub के पुल रिक्वेस्ट जैसा है। आने वाले हफ्तों में नियोजित जोड़ ये हैं:

  • प्रस्ताव मर्ज होने से पहले पास होने वाले आवश्यक टेस्ट।
  • खास रिव्यूअर्स से अप्रूवल माँगना।
  • एजेंट के अलग-अलग हिस्सों के लिए ओनर्स कॉन्फ़िगर करना।

प्रस्ताव लाइफ़साइकल

हर प्रस्ताव की इनमें से एक स्थिति होती है:

स्थितिमतलब
खुलासमीक्षा या मर्ज की प्रतीक्षा में।
मर्ज किया गयासोर्स ब्रांच के बदलाव टारगेट ब्रांच में मर्ज कर दिए गए।
बंदलेखक द्वारा वापस लिया गया, किसी और द्वारा अस्वीकार किया गया, या सोर्स ब्रांच आर्काइव होने के कारण अपने-आप बंद हुआ।

जब कोई प्रस्ताव खुला होता है, तो रिव्यूअर इनमें से एक निर्णय देते हैं। किसी रिव्यूअर का नवीनतम निर्णय उसी रिव्यूअर के पिछले निर्णय की जगह लेता है:

समीक्षा स्थितिमतलब
स्वीकृतरिव्यूअर बदलावों से संतुष्ट है।
बदलाव अनुरोधितरिव्यूअर मर्ज होने से पहले किसी बात का समाधान चाहता है।

प्रस्ताव खोलना

जिस ब्रांच के बदलावों की समीक्षा करवानी है, उससे प्रस्ताव खोलें:

एजेंट के Branches टैब में, सोर्स ब्रांच पर विकल्प मेनू खोलें और Open merge proposal चुनें।

ब्रांच के विकल्प मेनू में मर्ज प्रस्ताव खोलने का विकल्प

प्रस्ताव को एक शीर्षक, वैकल्पिक विवरण दें और एजेंट की दूसरी गैर-आर्काइव ब्रांचों में से टारगेट ब्रांच चुनें। प्रस्ताव खोलने से किसी भी ब्रांच में बदलाव नहीं होता; यह सिर्फ़ अनुरोध रिकॉर्ड करता है।

किसी सोर्स और टारगेट ब्रांच जोड़ी के लिए एक समय में अधिकतम एक खुला प्रस्ताव हो सकता है। उन्हीं दो ब्रांचों के बीच दूसरा प्रस्ताव खोलने से पहले मौजूदा प्रस्ताव बंद करें।

प्रस्ताव की समीक्षा करना

प्रस्ताव के पेज में ये टैब होते हैं:

विवरण, समीक्षा इतिहास और समीक्षा देने का फ़ॉर्म।

मर्ज प्रस्ताव का Overview टैब

प्रस्ताव के लेखक के अलावा, एजेंट का एडिट एक्सेस रखने वाला कोई भी व्यक्ति वैकल्पिक टिप्पणी के साथ समीक्षा दे सकता है। टिप्पणियाँ markdown सपोर्ट करती हैं।

प्रस्ताव मर्ज करना

प्रस्ताव मर्ज करने से सीधे मर्ज करने जैसा ही ब्रांच मर्ज होता है, जिसमें कन्फ़्लिक्ट समाधान और बाद में सोर्स ब्रांच को आर्काइव करने का विकल्प शामिल है। मर्ज होने से पहले प्रस्ताव को इन ज़रूरतों को पूरा करना होगा:

  • मर्ज करने वाले यूज़र के पास सोर्स और टारगेट, दोनों ब्रांचों का राइट एक्सेस हो। सुरक्षित ब्रांच पर, इसका मतलब workspace admin होना है।
  • किसी रिव्यूअर का नवीनतम निर्णय “बदलाव अनुरोधित” न हो। बदलाव अनुरोध करने वाले रिव्यूअर को प्रस्ताव मर्ज होने से पहले अप्रूव करना होगा।
  • प्रस्ताव में लेखक के अलावा किसी और से कम-से-कम एक अप्रूवल हो। Workspace admin इस अप्रूवल के बिना मर्ज कर सकते हैं।

प्रस्ताव मर्ज करने से उसी सोर्स ब्रांच के अन्य सभी खुले प्रस्ताव अपने-आप बंद हो जाते हैं, क्योंकि उसके बदलाव अब आगे बढ़ चुके हैं।

प्रस्ताव बंद करना

खुले रहने के दौरान किसी भी समय प्रस्ताव को बिना मर्ज किए बंद किया जा सकता है। लेखक और रिव्यूअर बंद होने तक उसका शीर्षक और विवरण एडिट कर सकते हैं।

  • लेखक के अपने प्रस्ताव को बंद करने पर वह वापस लिया गया के रूप में रिकॉर्ड होता है।
  • किसी और के बंद करने पर वह अस्वीकार किया गया के रूप में रिकॉर्ड होता है।
  • सोर्स ब्रांच को आर्काइव करने पर उससे या उसकी ओर जाने वाला कोई भी खुला प्रस्ताव अपने-आप बंद हो जाता है और branch_archived के रूप में रिकॉर्ड होता है।

मर्ज प्रस्ताव और Architect

जब आप Architect से ब्रांच, वर्ज़न और मर्ज के बारे में पूछते हैं, तब Architect के पास एजेंट की ब्रांचों का रीड एक्सेस होता है। इसलिए यह आपको प्रस्ताव का डिफ़ समझने या बातचीत में खुली समीक्षाओं का सार बताने में मदद कर सकता है।

अगले चरण