2012-07-04 25 views
5

काम पर हम टीएफएस का उपयोग करते हैं, और मैं काम करने के लिए गिट-टीएफएस उपकरण प्राप्त करने की कोशिश कर रहा हूं ताकि स्थानीय टीट्स रेपो में उन्हें धक्का देने से पहले स्थानीय प्रतिबद्धताओं के साथ काम करते समय मेरे पास अधिक लचीलापन हो।गिट-टीएफएस: प्रति गिट कमिट में एक टीएफएस परिवर्तन?

मेरे पास यह काम है, लेकिन जब मैं git tfs ct करता हूं, तो यह मेरे सभी कामों को एक टीएफएस परिवर्तन में जांचता है। क्या मुझे कुछ याद आ रहा है, या यह कैसे काम करना चाहिए? यदि यह अलग-अलग परिवर्तनों के रूप में टीएफएस को अलग-अलग मेरे प्रत्येक काम को धक्का नहीं देता है, तो ऐसा लगता है कि यह पहली जगह में गिट-टीएफएस का उपयोग करने के उद्देश्य को हरा देता है।

उत्तर

9

मैं rcheckin कमांड का उपयोग करता हूं जो आपके नए गिट परिवर्तनों को एक समय में एक बार tfs करने के लिए करता है, प्रत्येक टीएफएस सामान्य दिखने वाले पेड़ को उत्पन्न करने के बाद शेष काम करता है। चेकइनटोल उपमांड का उपयोग करना एक मर्ज कमेट का उत्पादन करता है - मुझे याद नहीं है कि यह स्क्वैशिंग गिट हालांकि करता है।

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

सब कुछ, गिट-टीएफएस टीएफएस सहनशीलता का उपयोग करता है।

+0

बढ़िया! यह वैसे ही काम करता है जैसा मैं चाहता था। मुझे आश्चर्य है कि क्यों गितूब रीडमे और विकी पेज उस आदेश का उल्लेख नहीं करते हैं। – Dan

+0

लॉक फ़ाइल के कारण विफल होने वाली 'rcheckin' के बारे में मुझे पसंद नहीं है केवल एक चीज यह है कि आपके परिवर्तन _partially_ को TFS सर्वर पर भेजा गया है। चूंकि मैं उन लोगों की एक टीम के साथ काम करता हूं जो गिट शर्मीली हैं और टीएफएस पसंद करते हैं, इसलिए मुझे 'रीबेज-ए' के ​​साथ अपने कामों को स्क्वैश करने के लिए मजबूर होना पड़ता है ताकि मेरी सफलता/विफलता हमेशा परमाणु हो। –

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

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