2010-01-21 8 views
8

मुझे पता है कि इसमें comeup पहले है, लेकिन मैंने देखा पदों में दिन-प्रतिदिन व्यक्तिगत अनुभवों के रास्ते में बहुत कम था। केवल कुछ प्रतिक्रियाएं। मुझे उन लोगों से सुनना अच्छा लगेगा जो गिट-पी 4 का उपयोग करते हैं, या एक पर्सफोर्स रेपो में "कवर के तहत" गिट का इस्तेमाल करते हैं, या अधिमानतः दोनों।
और उन लोगों के लिए जो किसी अन्य संस्करण नियंत्रण के नीचे गिट का उपयोग करते हैं, मुझे यह सुनना अच्छा लगेगा कि आप परिवर्तनों के मुख्य संस्करण नियंत्रण को सूचित करने के साथ कैसे निपटते हैं। विशेष रूप से, गिट/पर्सफोर्स के साथ, जब आप पूरा कर लेंगे और पर्सफोर्स सर्वर में बदलाव करने के लिए तैयार हों, तो आप यह बताएंगे कि क्या बदलाव हुए हैं?
मैंने गिट के साथ पोस्ट-प्रतिबद्ध हुक में देखा है, लेकिन मुझे कोई अन्य विचार सुनना अच्छा लगेगा।तो कौन सा बेहतर है, गिट-पी 4 का उपयोग करके या सिर्फ एक .git निर्देशिका को कार्यशील निर्देशिका में स्लाइड करना और इसके बल को अनदेखा करना?

+0

क्या आप अपने स्थानीय उपयोग के लिए गिट का उपयोग कर रहे हैं, या आप दूसरों के साथ भंडार साझा करने की योजना बना रहे हैं? –

उत्तर

8

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


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

+0

+1। ठीक-दराज वाले स्थानीय इतिहास (जहां आप काम करते हैं) को समर्पित रेपो आर 1 के बारे में, पी 4 (आरपी ​​4) द्वारा प्रबंधित आपके रेपो पर धक्का दिया गया है, और जहां आप रीबेज कर सकते हैं- i * वहां * (छोटे कामों को संरक्षित करना)? जब आरपी 4 को पेर्सफोर्स से नए डेटा के साथ अपडेट किया जाता है, तो आर 1 आरपी 4 से ला सकता है, और रिमोट/शाखा को अपनी विस्तृत शाखा के शीर्ष पर रीबेस कर सकता है। बस मेरे सिर के शीर्ष पर हालांकि। हो सकता है कि व्यावहारिक होने के लिए बहुत अधिक संघर्ष ट्रिगर करें। – VonC

+1

यह काम करने योग्य लेकिन काफी जटिल लगता है। क्या आप वाकई गिट * चाहते हैं * बुरा? –

+0

केवल तभी यदि आप एक ही इतिहास के दो सेटों को संरक्षित करना चाहते हैं, क्योंकि क्लोनिंग रेपो गिट के साथ ऐसा करना आसान है। लेकिन यह शायद अधिक है, और सिर्फ एक त्वरित मानसिक अभ्यास के रूप में इरादा है;) – VonC

1

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

0

मुझे लगता है कि यह वास्तव में आपके प्रतिद्वंद्वी भंडार के लेआउट पर निर्भर करता है - यदि आप इसके अपेक्षाकृत छोटे से हिस्से पर काम कर रहे हैं, तो शायद मैं सीधे .git निर्देशिका को छोड़ने के लिए जाउंगा। यह कम से कम पथ है दूर तक प्रतिरोध का और मैंने इसे छोटी परियोजनाओं पर सफलतापूर्वक उपयोग किया है।

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

0

जिस तरह से मैं यह करता हूं कि यह एक मास्टर शाखा और फीचर शाखाओं को गिट में रखना है, और फिर एक विशेष विशेषता के लिए मैंने कौन सी फाइलें बदल दी हैं, यह जानने के लिए एक विशेषता शाखा पर git diff --name-only master का उपयोग करें। मैं फिर उन फ़ाइलों को एक पर्सफोर्स चेंजलिस्ट में देखता हूं और इसे सबमिट करता हूं।

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

यह वास्तव में एक एफएफ है, लेकिन यह अब इतना बुरा नहीं है कि मैंने इसका उपयोग किया है - और यह बड़े पैमाने पर काम करने वाले पेर्सफोर्स का उपयोग करने से बहुत बेहतर है, और बिना किसी प्रकार के संस्करण नियंत्रण के प्रभावी ढंग से काम कर रहा है एक समय में दिनों के लिए :)

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

  • कोई संबंधित समस्या नहीं^_^