कोई समस्या नहीं है - सब कुछ उम्मीद के मुताबिक काम करता है।
गिटलैब में कुछ शाखाओं को संरक्षित किया जा सकता है। डिफ़ॉल्ट रूप से केवल Maintainer / Owner उपयोगकर्ता संरक्षित शाखाओं के लिए प्रतिबद्ध हो सकते हैं ( अनुमतियाँ डॉक्स देखें )। master
शाखा डिफ़ॉल्ट रूप से संरक्षित है - यह डेवलपर्स को मुख्य कोड में एकीकृत करने से पहले परियोजना के रखरखावकर्ताओं द्वारा मान्य किए जाने वाले मर्ज अनुरोधों को जारी करने के लिए मजबूर करती है।
आप प्रोजेक्ट सेटिंग्स में चयनित शाखाओं पर सुरक्षा को बंद और चालू कर सकते हैं (जहां वास्तव में GitLab संस्करण पर निर्भर करता है - नीचे दिए गए निर्देश देखें)।
उसी सेटिंग पृष्ठ पर आप डेवलपर्स को संरक्षित शाखाओं में धकेलने की अनुमति भी दे सकते हैं। इस सेटिंग के साथ, सुरक्षा को अस्वीकार करने वाले संचालन git push --force
(रिबेस) आदि को सीमित कर दिया जाएगा ।
चूंकि गिटलैब 9.3
प्रोजेक्ट पर जाएं: "सेटिंग्स" → "रिपॉजिटरी" → "संरक्षित शाखाओं" पर "विस्तार करें"
मुझे वास्तव में यकीन नहीं है कि जब यह परिवर्तन पेश किया गया था, तो स्क्रीनशॉट 10.3 संस्करण से हैं।
अब आप चुन सकते हैं कि किसे चयनित शाखाओं में विलय या पुश करने की अनुमति है (उदाहरण के लिए: आप master
सभी में पुश को बंद कर सकते हैं , जिससे शाखा में सभी परिवर्तन मर्ज अनुरोध के माध्यम से किए जा सकते हैं)। या आप शाखा से सुरक्षा को पूरी तरह से हटाने के लिए "असुरक्षित" पर क्लिक कर सकते हैं।
चूंकि गीतालाब 9.0
इसी तरह GitLab 9.3, लेकिन "विस्तार" पर क्लिक करने की आवश्यकता नहीं है - सब कुछ पहले से ही विस्तारित है:
प्रोजेक्ट पर जाएं: "सेटिंग्स" → "रिपॉजिटरी" → नीचे स्क्रॉल करके "संरक्षित शाखाएं"।
प्री गीतालाब 9.0
परियोजना: "सेटिंग" → "संरक्षित शाखाएँ" (यदि आप दिए गए प्रोजेक्ट के कम से कम 'मास्टर' हैं)।
फिर "अनप्रोटेक्ट" या "डेवलपर्स पुश कर सकते हैं" पर क्लिक करें: