2008-10-02 11 views
61

svn में, मेरे पास एक शाखा है जिसे बनाया गया था, संशोधन 22334 पर। समितियों को तब शाखा में बनाया गया था।क्या एसवीएन कमांड शाखा में संशोधित सभी फाइलों को सूचीबद्ध करेगा?

ट्रंक पर मौजूद चीज़ों की तुलना में शाखा में बदली गई सभी फ़ाइलों की सूची कैसे प्राप्त करें? मैं उन फाइलों को नहीं देखना चाहता हूं जो शाखा के निर्माण के दौरान ट्रंक पर बदल गए थे और "अब"।

+0

मैं अक्सर इस प्रश्न पर वापस आ जाता हूं और सबसे उपयोगी उत्तर @ एंड्रयूमेडिको से हटा दिया जाता है, जिसमें 'svn log' :-D – DanFromGermany

उत्तर

67

यह करना होगा मुझे लगता है कि:

svn diff -r 22334:HEAD --summarize <url of the branch> 
+0

परफेक्ट होता है। ठीक वही जो मेरे द्वारा खोजा जा रहा था। धन्यवाद। – Trenton

+0

धन्यवाद, यह वही है जिसे मैं ढूंढ रहा हूं। – nRk

+2

धन्यवाद। मुझे यह भी पता नहीं था कि मेरी शाखा किस संशोधन में है, इसलिए मैं शाखा के 'svn log | पूंछ 'को सबसे छोटा संशोधन संख्या प्राप्त करने के लिए। – BornToCode

31

तुम भी बदली हुई फाइलों की एक त्वरित सूची प्राप्त कर सकते हैं thats सब आप -u विकल्प

svn status -u 
साथ स्थिति कमांड के प्रयोग के लिए देख रहे हैं

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

वहाँ SVN आदेश यहां पर एक अच्छा ट्यूटोरियल है कि इन सामान्य परिदृश्य का एक बहुत बताते है: SVN Command Reference

+2

'svn status' आपको केवल स्थानीय संशोधन दिखाएगा। ओपी यह देख रहा था कि ट्रंक से बनाए गए सभी फाइल परिवर्तनों को उनकी शाखा में कैसे किया गया है। – webnesto

2

-u विकल्प अगर वे संकलन के दौरान जोड़ रहे हैं वस्तु फ़ाइलों सहित प्रदर्शित करेगा।

तो, इसके अलावा आप इसे दूर करने के लिए इस तरह उपयोग कर सकते हैं।

svn status -u | grep -v '\?' 
9

यह केवल संशोधित सूची जाएगा फाइलें:

svn status -u | grep M 
+0

एसवीएन स्थिति केवल स्थानीय वर्करेरिया संशोधन दिखाती है। यह निर्माण के बाद, शाखा में सभी परिवर्तनों के संबंध में मूल प्रश्न का उत्तर नहीं दे रहा है। – webnesto

+1

और – Manolete

+1

नाम में 'एम' युक्त फ़ाइलें' svn status -u | grep^एम –

2
echo You must invoke st from within branch directory 
SvnUrl=`svn info | grep URL | sed 's/URL: //'` 
SvnVer=`svn info | grep Revision | sed 's/Revision: //'` 
svn diff -r $SvnVer --summarize $SvnUrl 
0

आप निम्न आदेश का उपयोग कर सकते हैं:

svn status -q 

अनुसार रहे हैं:

With --quiet (-q), it prints only summary information about locally modified items.

चेतावनी: इस आदेश का आउटपुट केवल आपके संशोधन को दिखाता है। तो मैं फ़ाइल का नवीनतम संस्करण प्राप्त करने के लिए svn up करने का सुझाव देता हूं और फिर आपके द्वारा संशोधित फ़ाइलों को प्राप्त करने के लिए svn status -q का उपयोग करें।

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