मैं गिट हुक के साथ खेलना शुरू कर रहा हूं, और एक डेवलपर को एक विशिष्ट शाखा पर एक नई शाखा बनाने से रोकने के लिए एक बनाना चाहता हूं। हमारी कंपनी में वर्तमान प्रक्रिया इस तरह दिखना करने के लिए है:विशिष्ट शाखाओं से नई शाखाएं बनाने से रोकने के लिए गिट हुक
git checkout master
git fetch
git reset --hard origin/master
git checkout -b [branch name]
do awesome things.
हालांकि, कभी-कभी जब जल्दी से आगे बढ़, कुछ डेवलपर्स अंत एक मचान रेपो से इस नई शाखा शुरू। जो दुःख का कारण बनता है।
तो, जब कोई डेवलपर नई शाखा बनाने शुरू करता है, तो जांचें कि कौन सी शाखा चालू है, और exit 1
यदि शाखा master
नहीं है (या केवल सामान्य रूप से कार्रवाई को रोकती है तो मैं एक हुक बनाना चाहता हूं यदि शाखा का नाम staging
है), या इसे अन्यथा अनुमति दें।
संपादित करें:
मैं इस बारे में अधिक खोज के रूप में, मुझे लगता है मैं एक पूर्व चेकआउट हुक, जो अस्तित्व में नहीं दिखाई देती है। जब तक किसी के पास कोई बेहतर विचार न हो, तब तक उपरोक्त परिदृश्य पास होने पर मैं पोस्ट-चेकआउट हुक में एक बहुत बड़ी चेतावनी प्रिंट करने के लिए आगे बढ़ूंगा।
फिर, तुम क्यों शाखाओं को रोकने के लिए करना चाहते हैं? – jman
हमारी स्टेजिंग शाखा में बहुत सारे कोड हैं जो हम उत्पादन में धक्का नहीं चाहते हैं, जरूरी है। – hookedonwinter