2010-08-17 7 views
5

मैं एक शेल कमांड करना चाहता हूं जो git pull या svn update (किसी अन्य प्रोजेक्ट में) चलाने के बाद कैश फ़ाइलों और संकलन का ख्याल रखता है?क्या रिपोजिटरी अपडेट/स्विच के बाद स्वचालित रूप से शेल कमांड ट्रिगर करने का कोई तरीका है?

उत्तर

1

आप अपनी कस्टम स्क्रिप्ट चलाने के लिए विभिन्न घटनाओं (पूर्व- और पोस्ट-) पर कमांड लाइन से एसवीएन हुक का उपयोग कर सकते हैं।

ऐसा प्रतीत होता है कि 'अपडेट' ईवेंट के लिए कोई हुक नहीं है, कृपया here देखें और विवरण एकत्र करें।

+3

TortoiseSVN "कोर एसवीएन पर जीयूआई परत" नहीं है। TortoiseSVN एक स्वतंत्र रूप से विकसित ऐप है जो प्रकाशित एसवीएन पुस्तकालयों का लाभ उठाता है। यह कई सुविधाओं को लागू करता है जो एसवीएन.एक्सईई में नहीं हैं, जैसे क्लाइंट-साइड हुक स्क्रिप्ट्स (एक उदाहरण)। एसवीएन हुक सर्वर-साइड हैं। जब कोई उपयोगकर्ता अपनी स्थानीय कामकाजी प्रतिलिपि पर एसवीएन अद्यतन करता है तो वे नहीं चलते हैं। –

+0

ओह! जानकारी के लिए धन्यवाद! – pavanlimo

+0

"अगर जीयूआई समर्थन करता है, कमांड लाइन है!" - किसने शासन किया? –

7

के बारे में SVN: सुनिश्चित नहीं हैं कि इस में मदद मिलेगी, लेकिन अगर आप TortoiseSVN उपयोग करते हैं, आप उपयोग कर सकते हैं क्लाइंट साइड हुक लिपियों:

वर्तमान में हुक उपलब्ध लिपियों के छह प्रकार के होते हैं

प्रारंभ-लिखें
प्रतिबद्ध संवाद दिखाए जाने से पहले बुलाया गया। यदि आप हुक एक संस्करण वाली फ़ाइल को संशोधित करते हैं और उन फ़ाइलों की सूची को प्रभावित करते हैं जिन्हें संदेश करने और/या संदेश भेजने की आवश्यकता होती है, तो आप इसका उपयोग करना चाहेंगे। हालांकि आपको ध्यान रखना चाहिए कि चूंकि प्रारंभिक चरण में हुक को बुलाया जाता है, इसलिए प्रतिबद्धता के लिए चयनित वस्तुओं की पूरी सूची उपलब्ध नहीं है।

प्री-प्रतिबद्ध
उपयोगकर्ता द्वारा प्रतिबद्धता संवाद में ठीक क्लिक करने के बाद और वास्तविक प्रतिबद्धता शुरू होने से पहले कॉल किया जाता है। इस हुक में एक सूची है जो वास्तव में किया जाएगा।

पोस्ट-प्रतिबद्ध
प्रतिबद्ध समाप्त होने के बाद बुलाया गया (चाहे सफल हो या नहीं)।

प्रारंभ अद्यतन
अद्यतन करने के लिए संशोधन संवाद से पहले कहा जाता है दिखाया गया है।

प्री-अपडेट
वास्तविक सबवर्जन अपडेट शुरू होने से पहले कॉल किया गया।

पोस्ट-अपडेट
अद्यतन समाप्त होने के बाद बुलाया गया (चाहे सफल हो या नहीं)।

एक हुक को एक विशेष कार्यशील प्रति पथ के लिए परिभाषित किया गया है। आपको केवल शीर्ष स्तर पथ निर्दिष्ट करने की आवश्यकता है; यदि आप उप-फ़ोल्डर में कोई ऑपरेशन करते हैं, तो TortoiseSVN स्वचालित रूप से मिलान पथ के लिए ऊपर की ओर खोज करेगा।

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

+0

मैं एसएसएच के माध्यम से सर्वर को अद्यतन/पुल आदेश चलाता हूं और TortoiseSVN का उपयोग नहीं करता - मुझे इसके लिए एक दूरस्थ डेस्कटॉप की आवश्यकता होगी। – Tower

संबंधित मुद्दे

 संबंधित मुद्दे