2013-02-12 8 views
17

मैं जानता हूँ कि एक कमांड प्रॉम्प्ट से, मैं की तरहक्या मेरी कार्यशील प्रतिलिपि को मनमाने ढंग से संशोधन के साथ तुलना करना संभव है?

svn diff -rXXX foo.bar 

संशोधन XXX, भले ही इस संशोधन ने विलय शाखा पर था साथ foo.bar की मेरी काम कर प्रतिलिपि तुलना करने के लिए कुछ कर सकते हैं कि।

मैं TortoiseSVN के साथ ऐसा कैसे कर सकता हूं? यह मेरी शौचालय के रूप में ही शाखा पर लेकिन विभिन्न वालों पर नहीं पिछले संशोधन के साथ एक आकर्षण की तरह काम करता ...

संपादित करें: रोब के जवाब देने के लिए

धन्यवाद मैं अब में एक फ़ाइल तुलना करने में सक्षम हूँ मेरी एक विलय वाली शाखा पर बैठे एक पिछले संशोधन के लिए काम कर रहे प्रतिलिपि। आखिरी बात मुझे पता करना चाहते हैं तो इसे मैन्युअल रूप से मेरे काम कर प्रतिलिपि करने के लिए डिफ के कुछ विलय करने के लिए संभव है:

  • जब मैं में किसी दिए गए फ़ाइल के एक संशोधन पर राइट क्लिक करें "दिखाएँ लॉग ऑन" खिड़की और "काम करने की प्रतिलिपि के साथ तुलना करें", diff दर्शक (या मेरे मामले में WinMerge) पुरानी संशोधन (संशोधन संख्या के नाम पर और Windows temp फ़ोल्डर में मौजूद) पर फ़ाइल की एक स्थानीय प्रतिलिपि की तुलना मेरे वास्तविक में कामकाजी प्रति
  • जब मैं इस फ़ाइल को शिफ्ट-राइट-क्लिक करता हूं और "यूआरएल के साथ डिफ" चुनता हूं, तो फाइलों की तुलना स्थानीय फाइलों में की जाती है जो विंडोज़ के अस्थायी फ़ोल्डर में बनाई गई हैं, जिससे मुझे कुछ मतभेदों को मर्ज करने में मदद मिलती है ctly मेरी कामकाजी प्रतिलिपि के लिए ...

क्या इसके लिए कोई काम है?

उत्तर

20

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

इस बारे में अधिक जानकारी के लिए आप इस लिंक को पढ़ सकते हैं: Viewing Differences। यह विशेष रूप से "किसी अन्य शाखा/टैग के अंतर" अनुभाग

+0

आपके उत्तर के लिए धन्यवाद! यह वही है जो मैं एक चीज़ को छोड़कर ढूंढ रहा था: कछुआ मुझे मेरी विलय वाली शाखा पर चयनित संशोधन की तुलना करने के लिए मेरी डब्ल्यूसी के _copy_ के साथ तुलना करता है, न कि मेरे डब्ल्यूसी सीधे। यह एक बड़ा सौदा नहीं है लेकिन यह मुझे चेरी को कुछ बदलावों को मैन्युअल रूप से विलय करने के लिए रोकता है। कोई विचार है कि मैं यह कैसे कर सकता हूं? –

+0

@YannickBlondeau क्या आप एक उदाहरण दे सकते हैं? मैं आपके परिदृश्य का पालन नहीं कर रहा हूं 100%। जब मैंने इसे एक कामकाजी प्रतिलिपि पर परीक्षण किया, तो मैंने अपनी स्थानीय कामकाजी प्रतिलिपि में फ़ाइल पर शिफ्ट-राइट-क्लिक किया और तुलना की कि किसी अन्य शाखा पर फ़ाइल के विशिष्ट संशोधन के मुकाबले। यदि आप अपने परिदृश्य का उदाहरण देते हैं तो मैं आगे सहायता कर सकता हूं। –

+0

@Rob_Goodwin मैंने अपना प्रश्न संपादित किया है। आपकी सहायता के लिए धन्यवाद!! –

11

@ रॉब का उत्तर कार्य करता है, लेकिन आपको देखने की आवश्यकता है कि फिर एक संभावित लंबे यूआरएल में टाइप करें।

  1. Windows Explorer में लक्ष्य फ़ाइल के संदर्भ मेनू खोलें और TortoiseSVN >> Revision Graph का चयन करें: तुम सिर्फ एक जोड़े को माउस क्लिक और कोई टाइपिंग बिल्कुल के साथ एक ही कार्य को पूरा कर सकते हैं।
  2. ग्राफ प्रदर्शित होने के बाद, अपनी कार्यशील प्रति का प्रतिनिधित्व करने वाले नोड पर क्लिक करें।
  3. नियंत्रण + उस नोड पर क्लिक करें जिसे आप तुलना करना चाहते हैं, जो पर शाखा पर हो सकता है।
  4. किसी भी चयनित नोड पर संदर्भ मेनू खोलें, और compare revisions चुनें।

चित्रण में, संशोधन 22175 एक शाखा पर मेरी कार्यशील प्रति है। मैंने तुलना करने के लिए एक अलग शाखा पर नोड 18568 चुना - दोनों नोड्स बैंगनी वर्ग के साथ चिह्नित हैं।

TortoiseSVN revision graph

2013.02.14 अपडेट:, कॉपी काम कर सिर्फ आधार से काम नहीं कर की तुलना करें!

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

अंतिम नोट: Modified नोड का चयन करते समय, आदेश महत्वपूर्ण है! Modified पहले का चयन करें नियंत्रण + तुलना करने के लिए नोड का चयन करें। यह आपको संदर्भ मेनू पर compare revisions विकल्प देता है। यदि आप इसे दूसरी तरफ करते हैं, तो आपको केवल unified diff विकल्प मिलते हैं।

+1

उत्तर के लिए धन्यवाद! मैंने यहां पोस्ट करने से पहले यही प्रयास किया है, लेकिन अगर मेरी कार्यशील प्रति में असामान्य परिवर्तन शामिल हैं, तो वे diff में दिखाई नहीं देते हैं ... तो तुलना मेरी कामकाजी प्रति के साथ नहीं बल्कि मेरे कामकाजी आधार के साथ की जाती है। –

+0

यह * स्वीकार्य उत्तर की तुलना में एक आसान तरीका जैसा दिखता है ... लेकिन मेरे मामले में एक स्नैग है - "रेविजन ग्राफ" का चयन करने के बाद अब "भंडार से जानकारी प्राप्त करना" संवाद बॉक्स में घूम रहा है जो कहता है "लगभग 1 घंटा और 10 मिनट शेष "... सुनिश्चित नहीं है कि यह दूसरी बार बहुत तेज होगा लेकिन ऐसा लगता है कि यह बहुत लंबा इंतजार है। –

0
  1. विंडोज फ़ाइल एक्सप्लोरर में फ़ाइल पर राइट क्लिक करें और TortoiseSVN -> लॉग दिखाएँ पर क्लिक करें।
  2. उस संशोधन पर राइट क्लिक करें जिसके साथ आपको तुलना करने की आवश्यकता है और "कार्यशील प्रतिलिपि के साथ तुलना करें" का चयन करें।
संबंधित मुद्दे