2012-12-13 15 views
5

के लिए गिटोलाइट वीआरईएफ का उपयोग करके मैं गिटोलाइट के v2 से v3 में माइग्रेट करने का प्रयास कर रहा हूं। सर्वर-साइड प्रतिबद्ध संदेश जांच करने का पुराना तरीका myrepo.git/hooks/update.secondaryअद्यतन हुक

गिटोलाइट के v3 में चेक को एक रेपो विशिष्ट हुक में रखना था, वे चेक को एक चेक में रखने की सलाह देते थे VREF। दस्तावेज थोड़ा उलझन में है और मैं स्पष्टीकरण की उम्मीद कर रहा हूं।

मैं /home/git/.gitolite.rc

LOCAL_CODE     => "$ENV{HOME}/.gitolite/our_hooks", 

मेरी our_hooks निर्देशिका में में निम्नलिखित को शामिल किया है, मैं एक VREF फ़ोल्डर बनाया और वहाँ में मेरे पुराने update.secondary स्क्रिप्ट डाल दिया। मेरी gitolite-व्यवस्थापक/conf/gitolite.conf फ़ाइल में, मैं भंडार मैं स्क्रिप्ट को निष्पादित करने के लिए चाहते करने के लिए निम्न जोड़ा पर:

repo myrepo 
    RW = @my_developers 
    - VREF/update.secondary = @my_developers 

जब मैं पुश करने के लिए प्रयास करते हैं, मैं एक नोटिस मिलता है कि VREF/अद्यतन सिकंदरी नहीं मिल सका। अगर मैं

repo myrepo 
    RW = @my_developers 
    - /home/git/.gitolite/our_hooks/VREF/update.secondary = @my_developers 

मुझे कोई शिकायत नहीं मिलती है लेकिन हुक बिल्कुल नहीं दिखता है।

क्या मुझे गिटोलाइट का उपयोग करके चलाने के लिए अतिरिक्त अद्यतन जांच कैसे प्राप्त की जा रही है, इस पर नाव खो रहा है?

उत्तर

4

इसके आसपास का दस्तावेज थोड़ा उलझन में है, इसलिए उम्मीद है कि यह दूसरों को गिटोलाइट v3 के साथ काम कर रहे एक जंजीर अद्यतन हुक प्राप्त करने में मदद करेगा।

मैंने जो कुछ भी किया है वह सही है, गायब टुकड़ा मेरा अपडेट था। सिकंदरी स्क्रिप्ट को रहने के लिए जरूरी था।

gitolite-व्यवस्थापक/conf/gitolite.conf में, विन्यास दिखना चाहिए:

repo myrepo 
    RW = @my_developers 
    - VREF/update.secondary = @my_developers 

तो फिर वहाँ GL_BINDIR निर्देशिका में VREF निर्देशिका है। उस निर्देशिका में अपनी निष्पादन योग्य update.secondary फ़ाइल रखें।

GL_BINDIR निर्देशिका कि gitolite द्विआधारी आप तभी चल सकता है भाग गया होता है: gitolite setup

+2

+1 gitolite प्रलेखन अभेद्य है ... –

+1

धन्यवाद पहचान ली जाएगी। मैंने VREFs dir में एक सिमलिंक का उपयोग एक अपडेट में किया। हुक/सामान्य में सिकंडरी जो तब प्रत्येक रिपो में अपडेट.सेकंडरी की खोज करता है और चलाता है।डिफ़ॉल्ट कार्यक्षमता IMHO होना चाहिए। –

+0

लेकिन मैं प्रत्येक परियोजना के लिए एक व्यक्तिगत हुक कैसे चला सकता हूं? मैं इसे गिटोलाइट-एडमिन रिपोजिटरी से कैसे प्रबंधित कर सकता हूं? अग्रिम में धन्यवाद –

0

(upvoted) OP nathasm के answer को जोड़ने के लिए, मैं अपने .gitolite.rc फ़ाइल में एक LOCAL_CODE चर का उपयोग कर कोई समस्या नहीं है , जैसा कि "customising gitolite" खंड "वैकल्पिक स्थान" में उल्लिखित है।

हालांकि, मैंने कभी भी पर्यावरण चर का उपयोग करने में कामयाब नहीं रहा।

दूसरे शब्दों में, यह काम करेगा नहीं:

LOCAL_CODE     => "$ENV{HOME}/.gitolite/our_hooks", 

लेकिन यह होगा:

LOCAL_CODE     => "/home/git/.gitolite/our_hooks", 

पूरा पथ उपयोग करने का अर्थ है कि किसी भी VREF या हुक में/घर/Git/घोषित कर दिया। gitolite/our_hooks/VREF

repo myrepo 
    RW = @my_developers 
    - VREF/update.secondary = @my_developers 
संबंधित मुद्दे