2010-01-30 12 views
13

में वेबएडीवी ऑटो-वर्जनिंग मैंने हाल ही में वेबएडीवी के लिए एसवीएन की ऑटो-वर्जनिंग फीचर के बारे में सीखा। हालांकि मैं समझता हूं कि यह उचित संस्करण के प्रतिस्थापन नहीं है, जिसमें परिवर्तन सेट को दस्तावेज करने वाले संदेशों के साथ, यह मुझे ड्रॉपबॉक्स (एक अच्छा जीयूआई और वेब पेजों) से ठोस और सुरक्षित प्रतिस्थापन के रूप में मारता है। हालांकि, ऑटो-वर्जनिंग में अक्सर काम करने के बाद, मैं कल्पना करता हूं कि गिट या एचजी इसके लिए अधिक उपयुक्त होगा, सिर्फ उनके कॉम्पैक्ट डेटाबेस के कारण (हालांकि मुझे आश्चर्य है कि चीजों की वितरित प्रकृति स्वचालन को हल करने के लिए स्वस्थ बना सकती है संघर्ष)।गिट या एचजी या किसी भी आधुनिक वीसीएस

क्या यह ऐसी सुविधा है जिसे गिट या एचजी का उपयोग करके लागू किया गया है, जहां तक ​​कोई जानता है?

उत्तर

3

ऐसा लगता है कि किसी ने अभी तक एसवीएन की तुलना में अन्य वीसीएस के लिए ऑटोवर्जनिंग नहीं लिखा है। चूंकि वेबवीवी/डेल्टावी समर्थन एसवीएन सर्वर में लागू किया गया है, इसलिए वीसीएस को एसवीएन के अलावा अन्य स्विच करना संभव नहीं है।

सादा वेबएडीवी एक्सेस बहुत सारे डीवीसीएस के साथ संभव है, लेकिन वे केवल वेबएडीवी क्लाइंट्स के लिए भंडार तक पहुंचने और डीवीसीएस के अपने क्लाइंट के लिए ऑपरेशन पुश करने में सक्षम हैं, लेकिन कोई ऑटोवर्जनिंग नहीं है।

कुछ लिंक के बारे में अधिक पढ़ने के लिए:

9

इस समस्या के बाजार पर एक विकल्प है:

WsgiDAV एक है पाइथन WebDAV सर्वर है कि विभिन्न प्रकार के बैकएंड including the DVCS mercurial, साथ ही कुछ अन्य फैशनेबल स्टोर्स (कॉचडब, मोंगोडब, माईएसक्यूएल, ऐप इंजन) हैं। वर्तमान संस्करण के दावों पर ध्यान दें "यह उत्पादन कोड नहीं है।"

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

इस बारे में अधिक आम तौर पर सोच रहा हूं ... मैं नहीं करता हूं ' ऑटो-प्रतिबद्ध वेबएडीवी + एसवीएन चीज की सलाह नहीं देते हैं। जैसा कि आप कहते हैं, "ऑटो-वर्जनिंग में काम करता है"। लेकिन वे बहुत बार लगातार होते हैं, और आमतौर पर अर्थहीन होते हैं।

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

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

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

1

आप केवल हर बदलाव आपके द्वारा किए गए प्रतिबद्ध करने के लिए चाहते हैं, आप भी समाधान नीचे इस्तेमाल कर सकते हैं, का इस्तेमाल किया फ़ोल्डरों देख, inotifywait का उपयोग कर:

Making git auto-comit

यह एक साथ काम करने लगता है जो भी संस्करण आप उपयोग कर सकते हैं।

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