हम विभिन्न ग्राहकों के लिए कई परियोजनाओं के साथ एक सॉफ्टवेयर कंसल्टेंसी हैं। हम परंपरागत रूप से तोड़फोड़ का उपयोग करते हैं, लेकिन वर्तमान में गिट में जाने पर विचार कर रहे हैं।
हमारे द्वारा उत्पादित दस्तावेजों का एक महत्वपूर्ण हिस्सा हमारे ग्राहकों (आवश्यकताओं, वैश्विक डिजाइन, परीक्षण चश्मा, आदि) के साथ साझा किया जाता है, और हम इनका उत्पादन करने के लिए एमएस ऑफिस का उपयोग करते हैं। तोड़फोड़ में, हम यह सुनिश्चित करने के लिए इसकी "लॉक" सुविधा का उपयोग कर सकते हैं कि कोई भी एक ही समय में एक ही दस्तावेज़ को संपादित नहीं कर रहा था। Git में, आप ऐसा नहीं कर सकते क्योंकि इसकी वितरित प्रकृति से, git में ताले नहीं हैं।
ताले वास्तव में एक संचार तंत्र से बहुत कम हैं, लेकिन वे एक बहुत प्रभावी हैं।
वर्तमान में, हमारे कोड और ग्राहक-सामना वाले दस्तावेज़ आम तौर पर एक अलग svn रिपॉजिटरी के विभिन्न सबफ़ोल्डर्स में होते हैं। जब आप आगे बढ़ते हैं, तो आप हमें क्या करने की सलाह देंगे? मुझे विकल्पों का एक सेट दिखाई देता है:
हम 1-ऑन -1 को git करने के लिए svn रिपॉजिटरी को स्थानांतरित करते हैं। Office फ़ाइलों पर ताले का उपयोग करने के बजाय, हम वही करते हैं जो गिट लोग सुझाते हैं और किसी तरह इसे ठीक करने के लिए हमारे वर्कफ़्लो को बदलने का प्रयास करते हैं। यह किसी भी दस्तावेज़ को संपादित करने वाली शाखा में काम कर सकता है, और उस समीक्षा में विलय कर सकता है। यह दृष्टिकोण उदाहरण के लिए एक्सेल शीट पर टूटता है जिसमें परियोजना प्रबंधन जानकारी होती है; वे टीम के सदस्यों द्वारा आसानी से संपादित किए जाते हैं (और हम इसे प्रोत्साहित करते हैं), लेकिन किसी भी औपचारिक समीक्षा प्रक्रिया के अधीन नहीं
हम डॉक्स और प्रोजेक्ट प्रबंधन के लिए कोड और svn के लिए git का उपयोग करते हैं। इसका नुकसान यह है कि कुछ और डिज़ाइन-ईश दस्तावेज़ों को कोड के "पास" नहीं किया जाएगा, जिससे यह संभावना बढ़ जाती है कि लोग उन्हें अपडेट करना भूल जाते हैं। इसके अतिरिक्त, सभी को दो सेट टूल का उपयोग और समझना होगा। कहा, हो सकता है कि यह गैर-ग्राहक-सामना करने वाले डिज़ाइन डॉक्स के लिए पाठ-आधारित डॉक्टर उपकरण (लेटेक्स, मार्कडाउन, HTML, जो भी हो) में जाने का एक शानदार अवसर है।
1 की तरह, लेकिन हम एक
git lock
कमांड को हैक करते हैं जो कि svn लॉक हमारे लिए करता है (उचित माध्यम से रीड-ओनली फ्लैग को टॉगल करें और कुछ माध्यमों से सर्वर के साथ सिंक करें)।
मैं इस तर्क को नहीं खरीदता कि डीवीसीएस में ताले काम नहीं करते क्योंकि सिस्टम पूरी तरह से ऑफ़लाइन होने पर भी काम करना चाहिए। स्वॉन लॉक को भी ओवरराइड किया जा सकता है; वे एक संचार तंत्र हैं। कुछ प्रकार के नेटवर्क कनेक्शन के बिना, आपको अपने कंप्यूटर को बहुत अधिक संवाद करने के लिए नहीं मिलेगा।
हम एकमात्र दुकान नहीं हो सकते हैं जो svn lock
हमारे वर्कफ़्लो में फिट होने के साथ बहुत खुश हैं , है ना?
किसी भी विचार या सुझाव?
मैंने पाया कि /programming/119444/locking-binary-files-use-git-version-control-system लेकिन चर्चा बल्कि तकनीकी है; मैं एक ही समय में एक ही बाइनरी फ़ाइल को संपादित करने वाले दो टीम के सदस्यों की व्यावहारिक समस्या को हल करने या बचने के तरीकों की तलाश कर रहा हूं।