2008-09-09 14 views
53

के साथ एक पैच बनाना सबवर्सन में एक पैच बनाना बहुत आसान है, कछुए के साथ, आप राइट-क्लिक करें और पैच बनाएं चुनें। लेकिन मेरे जीवन के लिए, मुझे यह कार्यक्षमता टीएफएस में नहीं मिल रही है। क्या यह संभव है?टीएफएस

यदि नहीं, तो ओपन सोर्स टीएफएस होस्टेड प्रोजेक्ट्स (ला ला कोडप्लेक्स) में पैच सबमिट करने का मानक तरीका क्या है?

उत्तर

48
tf diff /shelveset:shelveset /format:unified 

संपादित करें: यह मानक आउटपुट में लिखता है। आप आउटपुट को फाइल में पाइप कर सकते हैं।

अधिक विकल्पों के लिए, Difference Command देखें।

+5

क्या आप थोड़ा और समझा सकते हैं? 1. आप इस पैच को कैसे लागू करेंगे? 2. इसके अलावा, अगर परियोजना केवल पैचर के लिए पढ़ी जाती है, तो वह अलमारियाँ नहीं बना सकता, क्या वह कर सकता है? –

+0

एक मानक यूनिक्स प्रोग्राम है जिसे "पैच" कहा जाता है जो स्रोत पेड़ के लिए एकीकृत diffs लागू करता है। मुझे यकीन है कि आप विंडोज कार्यान्वयन पा सकते हैं, या आप सिगविन का उपयोग कर सकते हैं। –

+0

@ डोरन यह शेल्वसेट और वर्तमान वर्कस्पेस फ़ोल्डर के बीच के सभी प्रारूपों को समान प्रारूप में प्रदर्शित करता है: http://hg.shrinkrays.net/spruce/changeset/0d00e3c15e2c/raw/spruce-0d00e3c15e2c.diff –

5

कोडप्लेक्स पैच बनाने के लिए अपने स्वयं के ग्राहक का उपयोग करता है। देखें: http://www.codeplex.com/CodePlexClient/Wiki/View.aspx?title=HowToContribute&referringTitle=Home

+0

लिंक किया गया ट्यूटोरियल बहुत पुराना और पुराना है। आप उस परियोजना पर 'सीपीसी चेकआउट' का उपयोग करने में सक्षम नहीं होंगे जिसमें आपके पास डेवलपर विशेषाधिकार नहीं हैं। – codechurn

2

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

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

0

मैंने एक समान मुद्दे के बारे में एक ब्लॉग पोस्ट लिखा जहां मैंने TF.exe कमांड और 7Zip से create a TFS patch file का उपयोग किया जिसे बाद में किसी अन्य TFS सर्वर या वर्कस्पेस पर लागू किया जा सकता था। मैंने पावरहेल स्क्रिप्ट को Github पर पोस्ट किया है, जिसका उपयोग एक वर्कस्पेस पर लंबित परिवर्तनों को ज़िप करने के लिए किया जा सकता है और फिर उन्हें एक अलग सर्वर पर लागू किया जा सकता है। इसे लंबित परिवर्तनों के बजाय एक परिवर्तनसेट का उपयोग करने के लिए संशोधित करना होगा, लेकिन इसे पूरा करना मुश्किल नहीं होना चाहिए।

+2

यह स्क्रिप्ट पूरी फ़ाइल का उपयोग करती है, न कि diffed लाइनों। एक नियंत्रित xcopy के अधिक – JJS