2010-01-15 24 views
12

मेरे पास थोड़ा सा कोड है जिसके लिए मैं संशोधन इतिहास देखना चाहता हूं। उदाहरण फ़ाइल में, लाइन 300 में कुछ "रोचक" है। मैं यह देखने के लिए svn का उपयोग कैसे कर सकता हूं कि उस पंक्ति को बदल दिया गया है और उस पंक्ति को बदलने से संबंधित svn टिप्पणी (ओं) की समीक्षा करें। (ध्यान दें कि उस फ़ाइल के पिछले संशोधनों में लाइन 300 पर ब्याज की मेरी लक्ष्य रेखा नहीं होगी)।svn: आखिरी बार जब मैं एक निश्चित रेखा बदल गई थी, तो मैं कैसे निर्धारित करूं?

उत्तर

15

आप एसवीएन के blame कमांड का उपयोग कर सकते हैं। यह निर्दिष्ट लक्ष्य के लिए प्रति पंक्ति आधार पर लेखक और संशोधन संख्या मुद्रित करेगा। आप समीक्षा कर सकते हैं एक बार जब आप संशोधन संख्या है लॉग और अन्य है कि संशोधन log के उपयोग से संबंधित परिवर्तन, आदि के लिए प्रतिबद्ध

+6

यदि आप कम विरोधाभासी महसूस कर रहे हैं, तो एसवीएन एनोटेट के रूप में भी जाना जाता है। (या आपके मालिक ने कोड लिखा है और आपके कंधे पर देख रहा है।) – jmanning2k

2

इसके लिए "svn blame" टूल है।

+2

बेस्ट आदेश कभी पता करने के लिए! सिवाय जब मेरा नाम आता है ... – RedFilter

+3

उनके पास इसके लिए एक "svn प्रशंसा" उपनाम भी है, शायद यदि आपको बुरी भावना हो तो बेहतर होगा? ;) – kusma

1

svn blame filename

फिर संशोधन जिसमें यह बदल गया था के लिए लॉग को देखो।

0

के रूप में दूसरों को पहले ही उल्लेख किया है, तो आप उपयोग कर सकते हैं:

svn annotate filename 

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

+0

एनोटेट दोष से बेहतर लगता है। कम से कम उस समय के लिए जो मुझे चाहिए था। :-) – Les

4

svn blame -v filename। वर्बोज़ संशोधन संख्या, नाम और दिनांक

2
svn [praise|annotate|blame] filename 

आपको संस्करण संख्या और अंतिम लेखक या संपादक प्रदान करता है।

svn [praise|annotate|blame] -v filename 

आपको अतिरिक्त जानकारी देगा। अगर आप शाखा विलय कर दिया है कि इस मामले में

svn blame -g filename 

आप निम्न आदेश का उपयोग करना चाहिए सभी उपलब्ध विकल्पों

svn blame --help