2011-01-11 13 views
5

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

उत्तर

8

आप प्रत्येक अपलोड के बाद सबूत में गिट को कॉल कर सकते हैं।

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

आईएमओ, यहां वीसीएस का उपयोग करके आपको बहुत कम लाभ मिलता है और अतिरिक्त समस्याएं मिलती हैं।

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

+0

मैं उपर्युक्त से सहमत हूं, लेकिन यदि ओपी वीसीएस मार्ग का पीछा करना चाहता है, तो [विभिन्न भाषाओं] के लिए गिट रैपर हैं (https://git.wiki.kernel.org/index.php/Interfaces ,_frontends,_and_tools #Interfaces_to_other_programming_languages) – asymmetric

+3

मैं "वीसीएस का उपयोग न करें" टिप पर सहमत हूं। +1 – VonC

+0

@cezio - क्या आप किसी भी उपकरण/सॉफ्टवेयर से अवगत हैं जो दस्तावेजों को बनाए रखने और प्रबंधित करने में मदद करता है (वीसीएस फीचर्स-डिफ, संस्करण इत्यादि के साथ)? –

1

वहाँ एक सार्वभौमिक सुविधा (कम से कम एक सब आप का उल्लेख दस्तावेज़ प्रकार के साथ जुड़े संपादकों के साथ एकीकृत)

सबसे आसान तरीका है एक पृष्ठभूमि काम जो प्रतिबद्ध जाएगा, वे "सेव पर प्रतिबद्ध" नहीं है (या गिट के मामले में 'git add -A && git commit -m "xxx") उदाहरण के लिए हर 5 मिनट।

वास्तव में, Mark Longair टिप्पणियाँ:

flashbake क्या आप उचित प्रतिबद्ध संदेश के कुछ प्रकार के साथ दूसरे पैराग्राफ में वर्णन करने के लिए क्रॉन से चलाने के लिए बनाया गया है।
मुझे यकीन नहीं है कि मूल पोस्टर के बाद यही है।

Original project here:

  • स्वचालित बैकअप अच्छा है जब तक आप जिसके लिए आप एक वृद्धिशील इतिहास को देखना चाहते फ़ाइलें है।
  • उस इतिहास के लिए स्रोत नियंत्रण बहुत अच्छा है लेकिन अधिकांश टूल लेखक से मैन्युअल रूप से अपने परिवर्तनों को मैन्युअल रूप से करने की अपेक्षा करते हैं।
  • => एक निर्बाध स्रोत नियंत्रण समाधान स्रोत संस्करण नियंत्रण की शक्ति के साथ स्वचालित बैक अप की सुविधा को जोड़ता है।
+0

वास्तव में, यदि फ़ाइलों को अपलोड के साथ जोड़ा जाएगा, तो सर्वर-साइड स्वचालित रूप से अपलोड के बाद जोड़ और प्रतिबद्ध हो जाएगा। – cezio

+0

मैंने कभी ऐसी चीज नहीं मांगी है, इसलिए मैंने इसे आजमाया नहीं है, लेकिन फ्लैशबेक https://github.com/commandline/flashbake/wiki को दूसरे पैराग्राफ में वर्णित करने के लिए क्रॉन से चलाने के लिए डिज़ाइन किया गया है किसी तरह का उचित प्रतिबद्ध संदेश। मुझे यकीन नहीं है कि मूल पोस्टर के बाद यही है। –

+0

@ मार्क: दिलचस्प, धन्यवाद। मैंने आपके उत्तर में आपकी टिप्पणी (और कुछ अतिरिक्त सूचनाएं) शामिल की हैं। – VonC

1

सीज़ियो के उत्तर से एक शाखा के रूप में, यदि आप वास्तव में संस्करण नियंत्रण के लिए वीसीएस का उपयोग करना चाहते हैं, तो लाटेक्स पर विचार करें।चूंकि यह अनिवार्य रूप से स्रोत कोड है जिसे किसी दस्तावेज़ में संकलित किया जाता है (आमतौर पर pdflatex के माध्यम से पीडीएफ), यह संस्करण नियंत्रण के लिए एक उचित उम्मीदवार है।

+0

एक विचार के रूप में, इस लड़के को पुनर्जीवित करने के लिए क्षमा चाहते हैं। –

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