2009-03-19 13 views
72

मैं svn: externals का उपयोग करने पर एक संक्षिप्त और अच्छी तरह से लिखित ट्यूटोरियल की तलाश में हूं।svn के साथ कैसे प्रारंभ करें: बाहरी?

मैं पहले से ही है कि कैसे एक बुनियादी तरीका अपने आप में उन्हें इस्तेमाल करने के पता है, लेकिन मैं एक अच्छा लेख है कि मुझे लगता है कि हाल ही में आए इस तरह जब सवालों का जवाब करने के लिए लिंक कर सकते हैं चाहते हैं:

What to do with multiple projects depending on the same source?

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

उत्तर

40

यहाँ svnbook में इसके बारे में कुछ वर्गों रहे हैं/TortoiseSVN मैनुअल:

This SVN पर svnbook पृष्ठ है: बाहरी। यह विषय पर सबसे उपयोगी संसाधन है।

This one वर्कफ़्लो में उप-परियोजनाओं को शामिल करने के चार तरीकों को बताता है (और प्रक्रिया में पांचवें एक: सिम्लिंक याद आती है)।

और this last one एक भंडार में सामान आयात करने के तरीके पर एक TortoiseSVN- विशिष्ट पृष्ठ है (सीधे svn: externals से संबंधित नहीं)।

16

मामले में यह ऊपर दिए गए लिंक, जिस तरह से आप svn:externals संपत्ति एक विशेष संशोधन से जुड़ा हुआ है कि सेट (पिन करने) से स्पष्ट नहीं है, यहाँ यह है:

svn propset svn:externals "plugins -r12345 https://svn.example.com/common/plugins" extras 

कर देगा होगा कि extras निर्देशिका के अंतर्गत उपनिर्देशिका और बाहरी एसवीएन यूआरएल https://svn.example.com/common/plugins के 12345 को संशोधित करने के लिए इसे लिंक करें।

एक रेड बीन आलेख है जो propedit का उपयोग करने का सुझाव देता है क्योंकि svn:externals एक बहु-रेखा मान हो सकता है। उपर्युक्त उदाहरण propedit का उपयोग करने के लिए निम्नानुसार बदला जाएगा।

svn propedit svn:externals extras 

फिर आप मूल्य के लिए ऊपर दिखाए गए समान प्रारूप के बाद प्रत्येक बाहरी लिंक के लिए एक पंक्ति जोड़ देंगे।

0
root/repo1/proj/base/common/log.c 
root/repo1/proj/base/common/log.h 
root/repo1/proj/base/client 

root/repo2/proj/test/base 

जैसा कि ऊपर दिखाने के लिए, हम repo2

लिए 2 फ़ाइलें और 1 निर्देशिका कॉपी करने चरण 1

निर्देशिका हैं:/घर/जैक/repo2/proj/

cd /home/jack 

चरण 2

svn propset svn:externals "../repo1/proj/base/client proj/base/client" repo2 

कुछ की तरह: ln repo1/proj/base/client repo2/proj/base/client

चरण 3

export SVN_EDITOR=vim 

चरण 4

svn propedit svn:externals repo2 

vim शो:

../repo1/proj/base/client proj/आधार/ग्राहक

Step5: जोड़ने के एक और दो फ़ाइलों

../repo1/proj/base/client proj/base/client 
../repo1/proj/base/common/log.c proj/base/common/log.c 
../repo1/proj/base/common/log.h proj/base/common/log.h