2012-01-09 3 views
13

मैं svn के संस्करण 1.3.2 का उपयोग करके 2 संशोधन की तुलना करना चाहता हूं और बदली गई फ़ाइलों/फ़ोल्डरों को सर्वर पर किसी स्थान पर कॉपी करना चाहता हूं। प्रतिलिपि समस्या नहीं है, मुझे क्या परेशानी है केवल बदलते पथ मिल रहा है। मैं इस आदेश का उपयोग कर रहा हूँ:svn diff (v 1.3.2) के साथ 2 संशोधन की तुलना करना और केवल बदले गए पथ प्राप्त करें?

svn diff -r 90:93 URL --username name --password password 

यह मैं जानकारी का एक बहुत कुछ देता है, कैसे मुझे लगता है कि जानकारी से ही बदली हुई रास्तों निकालने हैं? --समारिज संस्करण 1.3.2 के लिए उपलब्ध नहीं है।

/path/test.txt

धन्यवाद: क्या मैं चाहता हूँ की तरह कुछ है! :)

उत्तर

13

क्या आप यूनिक्स/लिनक्स/मैक पर हैं, या सिगविन स्थापित है?

Index: से शुरू होने वाली सभी लाइनों को खोजने के लिए आप grep के माध्यम से आउटपुट पाइप कर सकते हैं। (अगर मुझे सबवर्सन 1.3 का डिफ कमांड आउटपुट याद है) तो इससे आपको अलग-अलग फाइलों के नाम मिलेंगे। सीवीएस के साथ मैं यही करता हूं।

$ svn diff -r 90:93 --username name --password password URL \ 
> | sed -n /^Index: /s/^Index: //p' 
+1

कई 'sed' कार्यान्वयन (सभी?)' अनुमति देते हैं/str/एस // आरपीएल/'के रूप में:

$ svn diff -r 90:93 --username name --password password URL | grep "^Index: " 

अगर वह काम करता है, और आप सूचकांक निकालना चाहते हैं, तो आप उपयोग कर सकते हैं sed '/ str/s/str/rpl /' के लिए एक शॉर्टेंड – tripleee

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