क्या पुल के लिए कोई गिट हुक है?


157

मुझे अपने प्रोजेक्ट पर हर बार चलने वाली कुछ क्रियाओं (गेटेक्स्ट * .मो संदेश फ़ाइलों को तैयार करना) करने की आवश्यकता है git pull। क्या कोई उपयुक्त गिट हुक है, जिसे मैं इस उद्देश्य के लिए उपयोग कर सकता हूं?


15
@ एलन: यह निश्चित रूप से एक डुप्लिकेट नहीं है। यह सवाल स्थानीय पक्ष के एक हुक के बारे में है , जहां आप चलाते हैं git pull। आपके द्वारा जोड़ा गया रिमोट रिमोट पर हुक को ट्रिगर करने के बारे में है , जब कोई इसे से खींचता है। (और यह एक बहुत ही अजीब सवाल है - इसका मतलब है कि वे एक गैर-नंगे केंद्रीय रेपो का उपयोग कर रहे हैं ...)
कैसबेल

2
@Alan: यदि आप स्किमिंग कर रहे थे तो मिस करने के लिए काफी आसान है - आशा है कि मैं बहुत कठोर नहीं था। मैं सिर्फ सवालों को गलत तरीके से बंद करने के बारे में पागल हो जाता हूं, क्योंकि फिर से वोटों को जमा होने में बहुत अधिक समय लगता है।
कास्केबेल

1
Jefromi: आप बिल्कुल सही हैं। चिंता करने की कोई जरूरत नहीं। मैं बस दुखी था कि मैंने स्किम्ड किया और करीबी पहल की।
एलन हाग्गै अलवी

जवाबों:


184

githooksआदमी पेज हुक की एक पूरी सूची है। यदि यह वहां नहीं है, तो यह मौजूद नहीं है।

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


39
@Jefromi "सभी पुल में एक मर्ज शामिल है", भले ही मैं एक पुल --rebase करूँ?
FMaz008

11
यह भी पाया गया कि दौड़ते समय मर्ज कभी भी निष्पादित नहीं होता है git pullअगर इसमें खींचे जाने वाले बदलाव नहीं हैं (आप पहले से ही अद्यतित हैं)।
जो बर्गस्टाइन

11
@jbergantine: मुझे लगता है कि मैं अपने जवाब में अभेद्य था - सभी खींचता है कि नहीं-ऑप्स एक मर्ज शामिल नहीं हैं। लेकिन ... सामान्य तौर पर, यदि आप कोई मर्ज होने पर कार्रवाई करने का प्रयास कर रहे हैं, तो मुझे नहीं लगता कि आप तब कार्रवाई करना चाहते हैं जब कोई न-ओप मर्ज करता है। उदाहरण के लिए, ओपी के लिए उन फाइलों को फिर से बनाना एक बेकार बात होगी अगर कुछ भी नहीं बदला है।
कैस्केबेल

12
यदि आप वास्तव में हर बार जब आप खींचते हैं तो आप कुछ करना चाहते हैं ... आप उर्फ ​​'गिट पुल' कर सकते हैं ताकि आप एक स्क्रिप्ट को कॉल करें जो गिट पुल करता है और फिर कुछ और करता है
शैडो रेडिएशन

13
git pullरिबेस के साथ (या तो --rebaseया कॉन्फिग के साथ pull.rebase=true) एक मर्ज शामिल नहीं है और पोस्ट-मर्ज हुक को ट्रिगर नहीं करेगा। इस मामले के लिए आप --no-rebaseयह सुनिश्चित करने के लिए निर्दिष्ट कर सकते हैं कि हुक चालू हो गया है या पोस्ट-रीराइट हुक का उपयोग करें।
विक्टर श्रोडर

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.