को संपीड़ित करने के लिए गिट हुक के साथ सीआई स्क्रिप्ट का सही ढंग से उपयोग कैसे करें मेरे पास feature
शाखा और testing
शाखा (प्रारंभिक प्रतिगमन के लिए) है। मैं परीक्षण वातावरण के लिए अपने testing
शाखा के लिए एक कार्यशील प्रति उपलब्ध करना चाहता हूं। हालांकि, मुझे किसी स्क्रिप्ट के माध्यम से कुछ स्रोत कोड (बाइनरी में नहीं, बस अनुकूलित करें) को संपीड़ित करने की आवश्यकता है। मैं इस स्क्रिप्ट को पोस्ट-प्राप्त गिट हुक के माध्यम से अधिनियमित कर सकता हूं।स्रोत
मैं अपनी बैश स्क्रिप्ट (सीआई के लिए) को डिजाइन करने की कोशिश कर रहा हूं ताकि यह काफी मजबूत हो और गिट संघर्षों के कारण स्वचालन से बचना चाहें। मैं सीआई को प्रतिबद्ध करने की अनुमति देने के लिए मुख्य भंडार (origin
) और एक परीक्षण पर्यावरण भंडार (ci_test
) रखने की सोच रहा हूं।
मैं स्रोत को बढ़ावा देने पर ci_test/testing
पर धक्का देने के बारे में सोच रहा हूं। सीआई को origin/testing
से संपीड़ित, जोड़ना, प्रतिबद्ध करना चाहिए, यदि आवश्यक हो तो विलय करें (अपने पूर्ण पूर्ण iff संघर्ष लेना), फिर origin/testing
पर धक्का दें।
उपरोक्त मेरे मॉडल की समस्या यह है कि जब मैं ci_test/testing
पर धक्का देने का प्रयास करता हूं तो गिट शिकायत करता है क्योंकि इसमें एक कार्यशील प्रति है (समझ में आता है, क्योंकि उन्हें सिंक नहीं किया जा सकता है)। क्या गिट के साथ निरंतर एकीकरण स्क्रिप्ट का उपयोग करने के लिए कोई उचित (स्वचालित) तरीका है ताकि वे अभी भी ट्रैक हो जाएं?
[पुश-टू-चेकआउट] (https://git-scm.com/docs/githooks#_push_to_checkout) हुक आशाजनक दिखता है। मैं उस हुक के बारे में पता नहीं था। कारण मैं ci_test को एक कार्यशील प्रतिलिपि बनाना चाहता था क्योंकि हुक स्रोत को संशोधित करेगा और मैं परिवर्तन करना चाहता हूं (मैं कल्पना नहीं कर सकता कि काम करने की प्रतिलिपि के बिना ऐसा करने में सक्षम होना)। मैं कामकाजी प्रति को उस निर्देशिका के रूप में भी उपयोग कर रहा हूं जिसका प्रयोग अनुप्रयोग के परीक्षण संस्करण को पढ़ने के लिए किया जाता है। – BLaZuRE
@BLaZuRE हां, आपके मामले में, पुश-टू-चेकआउट एक अच्छा फिट लगता है। – VonC