2009-03-03 14 views
24

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

मैं कुछ तरीके के बारे में सोच सकते हैं:

  1. वर्ड/ओपन ऑफ़िस दस्तावेज़ों। नए ऑफिस वर्ड में डॉक्स प्रारूप है, जो दस्तावेज़ों को ज़िपित करता है, लेकिन इसमें एक अनजिप एक्सएमएल प्रारूप भी है, जिसका उपयोग गिट में कुशलतापूर्वक स्टोर करने के लिए किया जा सकता है। Diff सुविधा अभी भी टूटी हुई है, क्योंकि एक्सएमएल एक लाइन पर squished हैं। यह गिट में एक बाइनरी फ़ाइल को संग्रहीत करने से बेहतर नहीं है।
  2. विकी। वहां वितरित विकी क्या मौजूद हैं? यह किसी प्रकार की लेटेक्स चीज की तरह होगा जहां दस्तावेजों को विकी के रूप में लिखा और संकलित/देखा जाता है।
  3. लेटेक्स - लेकिन कागजात के लिए इसका उपयोग करने से मुझे दस्तावेज़ों के लिए यह बहुत अनुपयुक्त लगता है। क्या कोई दस्तावेज बराबर है? (मैन पेज कैसे लिखे गए हैं?)
  4. सादा पाठ प्रारूप, लेकिन आरेखों की कमी के कारण इसकी कमी है, जो एक और बिंदु लाता है।

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

+0

एसवीजी वास्तव में सबसे दृश्यों के लिए काफी अच्छी तरह से काम कर सकते हैं चाहिए, और यदि आप सावधान कर रहे हैं, डिफ भी हो सकता है उचित रूप से पठनीय। – naught101

उत्तर

1

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

तो केवल डिस्क स्थान पर विचार करते हुए, गिट में असम्पीडित एक XML Office दस्तावेज़ को संग्रहीत करने और उसी दस्तावेज़ के ज़िप्ड संस्करण को संग्रहीत करने के बीच थोड़ा अंतर होता है। एकमात्र अंतर ज़िप बनाम रिश्तेदार प्रदर्शन होगा जो कि कंप्रेशन गिट का उपयोग करने के लिए चुनता है।

+3

असल में, मुझे लगता है कि गिट एक बाइनरी diff (पैक फाइलों के निर्माण में) करेगा यदि बचत पर्याप्त रूप से बड़ी है ... –

+0

आह, आप बिल्कुल सही हैं, मैंने पैक फाइलों की संरचना को नहीं माना था –

2

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

अधिकांश विकिस वितरित किए जाते हैं कि उन्हें सहयोग के लिए डिज़ाइन किया गया है। मुझे लगता है कि आप वास्तव में पूछ रहे हैं कि होस्ट किए गए समाधान हैं या क्या आपको उनका प्रबंधन करना है। http://www.atlassian.com/ पर एक नज़र डालें।

1

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

किस दस्तावेज को स्टोर करने के लिए, मैं आपके द्वारा उपयोग किए जाने वाले किसी भी चीज़ को संग्रहीत करने की अनुशंसा करता हूं। किसी परियोजना द्वारा जारी रखने के लिए किसी दस्तावेज़ द्वारा आपके द्वारा कौन से दस्तावेज़ों का उपयोग किया जाना चाहिए? नए व्यक्ति को गति में लाने के लिए कौन से दस्तावेज़ उपयोगी होंगे?इसका मतलब विनिर्देश है, लेकिन बर्डडाउन चार्ट जैसे दस्तावेज़ नहीं।

अपने प्रश्न के विकी भाग का उत्तर देने के लिए, DokuWiki देखें। यह पाठ फ़ाइलों में सबकुछ संग्रहीत करता है ताकि उन्हें स्रोत नियंत्रण प्रणाली में जोड़ना बहुत आसान हो।

+0

पहला दो वाक्य बकवास हैं। यदि आप अपनी लाइन-उपयोग समझदार (प्रति पंक्ति एक वाक्य, जहां संभव हो मार्कअप के लिए अलग पंक्तियां) रखते हैं, तो * अधिकांश * सादे टेक्स्ट प्रारूप (लेटेक्स, मार्कडाउन, आरएसटी, एचटीएमएल) आपको पूरी तरह से पठनीय diffs देगा। गिट में विशेष रूप से इसे भी अच्छे बनाने के लिए उपकरण होते थे: शब्द-भिन्नता और [diff-highlight] स्क्रिप्ट] (http://stackoverflow.com/questions/1721738/using-diff-or-anything-else-to-get- चरित्र स्तरीय-diff-बीच-पाठ फ़ाइलें/15635889 # 15635889)। – naught101

1

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

प्रारंभिक परियोजना कलाकृतियों जैसे प्रारंभिक और प्रारंभिक डिज़ाइनों के लिए, मैं टेक्स्ट दस्तावेज़ों का उपयोग करता हूं - क्योंकि मैं कर सकता हूं परिवर्तनों को ट्रैक करें, लेकिन क्योंकि मैं इसके लिए अपना आईडीई उपयोग करना चाहता हूं।

मुझे वास्तव में इस तथ्य से "काटा नहीं गया" है कि संस्करण नियंत्रण में परिवर्तन "diffed" नहीं हो सकता है। में एक और निशान है कि वहाँ यदि आप इसे देखने के लिए - प्रतिबद्ध टिप्पणियों और एक महत्वपूर्ण बाइनरी दस्तावेज़ को बदलने के आसपास अन्य प्रलेखन दिशा निर्देशों आमतौर पर दृश्यता की है कि कमी के लिए बनाते हैं।

मैं मानता हूँ यह आदर्श नहीं है, लेकिन मुझे नहीं लगता कि यह वास्तव में पर fretting लायक है है।

शायद मैं अभी फ़ाइलों के एक सेट के विचार के लिए उपयोग किया गया है, जितना मैं चाहूंगा उतना ट्रैक करने में सक्षम हूं।

मैंने संस्करण नियंत्रण में बहुत कुछ लगाया है, लेकिन कुछ चीजों के लिए दोषपूर्ण ट्रैकिंग का भी उपयोग किया है जो अस्थायी हैं।

6

मेरी कंपनी भंडार SVN में Word दस्तावेज़ और TortoiseSVN के माध्यम से उन्हें एक्सेस करता है।

कछुए आपको दो संशोधनों का "diff" दिखाने के लिए वर्ड के अंतर्निहित परिवर्तन ट्रैकिंग फ़ंक्शन का उपयोग करता है।

यह वास्तव में अच्छी तरह से काम करता है, लेकिन Windows और वचन की आवश्यकता है।

संपादित करें:

आप शायद इस Git के साथ भी काम कर रहा हो सकता है। आप TortoiseSVN स्थापित है, तो %PROGRAMFILES%\TortoiseSVN\Diff-Scripts\ में देखो, तो आप देखेंगे क्या कछुआ कर रही है।

आप Git उपयोग कर रहे हैं, मुझे लगता है कि आप 1337 यह हैक करने के लिए पर्याप्त हैं आप :)

+0

diff-scripts संकेत अच्छा है। कछुए को दिमाग में रखेगा – hillu

+2

यहां [समाधान एक साथ गिट हैकिंग] के लिए मेरा समाधान है (http://xcafebabe.blogspot.hu/2012/09/sexy-comparison-of-word-documents-with.html) :-) – rlegendi

8

यह तय करते क्या दस्तावेज़ प्रारूप चुनते हैं, तो आप यह सुनिश्चित करें कि टीम के सदस्यों को करना चाहिए के लिए काम करने के लिए (या आप कर रहे हैं अकेले काम कर रहे हैं?) प्रारूप के साथ सहज काम कर रहे हैं।

  1. भंडारण इतना समस्या नहीं है क्योंकि संस्करणों और विलय के बीच अंतर देखने में सक्षम है। मेरे अनुभव में, कुछ भी नहीं पाठ प्रारूपों कि किसी भी पाठ संपादक में स्वतंत्र रूप से संपादित किया जा सकता धड़कता है। इसमें एचटीएमएल और किसी एक्सएमएल-आधारित प्रारूप के बारे में बताया गया है। डॉकबुक एक मुश्किल उपयोग करने योग्य अपवाद है।

  2. एक अच्छी विकी जो किसी भी लोकप्रिय संस्करण नियंत्रण प्रणाली का उपयोग कर सकती है और वितरित फैशन में स्थापित की जा सकती है IkiWiki है। IkiWiki के साथ, प्लग-इन में मार्कअप पार्सिंग किया जाता है, इसलिए आप प्रति-दस्तावेज़ आधार पर इनपुट प्रारूप चुन सकते हैं। "डिफ़ॉल्ट", Markdown सादे-पाठ प्रारूपों के बहुत करीब हो जाता है।

  3. यदि आप लाटेक्स का उपयोग करने से नाखुश हैं, तो इसका उपयोग न करें। मुझे लगता है कि त्वरित नोट लेने के लिए यह अनुपयुक्त है। मैन पेज एनआरओफ़ में लिखे गए हैं, लेकिन कई लोग POD जैसे अन्य प्रारूपों का उपयोग करते हैं।

कुछ परियोजनाओं कि Visio के लिए विकल्प होने का प्रयास करते Kivio (केडीई) और दीया (जीटीके/Gnome) कर रहे हैं। मैंने Visio का उपयोग नहीं किया है, इसलिए मैं उनके फीचर सेट पर टिप्पणी नहीं कर सकता। यह शायद इस बात पर निर्भर करता है कि आप किस प्रकार के दृश्य/आरेख बनाना चाहते हैं। यूएमएल? प्रवाह चार्ट?

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

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