से /home/me/projects/project1
से सब कुछ प्रतिबद्ध करने के लिए अगर मैं आपकी समस्या को समझने की जरूरत है, तुम हो:
project1/
project1/link1 -> ../../some/where/else
यह तोड़फोड़ संग्रह का सिमलिंक प्रविष्टि है, लेकिन क्या कहते हैं आप एक सरल svn add link1
करते हैं आप पूरा करने की कोशिश कर रहे हैं पेड़ में कहीं और सामान प्राप्त कर रहा है।
यदि यह मामला है, तो आप गलत दिशा में लड़ रहे हैं, आपको वास्तविक फाइलों और निर्देशिकाओं को लिंक 1 के तहत बनाना चाहिए, और लक्ष्य स्थान को लिंक 1 निर्देशिका में सिमलिंक करना चाहिए। यह समस्या का एक आसान समाधान होगा।
एक और समाधान स्थान ../../some/where/else
अपने स्वयं के दाईं ओर एक svn स्थान बनाना होगा, और उस स्थान के लिए लिंक 1 को बाह्य परिभाषा बनाना होगा। जब आप मुख्य निर्देशिका में प्रतिबद्ध होते हैं, तो बाहरी समय एक ही समय में किया जाएगा जो जानकारी संग्रहित करेगा; हालांकि यह सुनिश्चित करने के लिए कि अन्य स्थान सिंक में रखा गया था, आपको इसे संग्रहीत डेटा के समान संस्करण में अपडेट करना सुनिश्चित करना होगा।
मेरे मामले में, मेरा डेस्कटॉप पर, मैं एक सेटिंग निर्देशिका है:
$HOME/settings
यह वह जगह है एक से .bashrc
, .profile
, .vimrc
, .vim
, आदि फ़ाइलें और फ़ोल्डर होते एक निर्देशिका की एक प्रति की जाँच svn
रेपो। मेरी सभी प्रोफाइल फाइलें और निर्देशिकाएं इस फ़ोल्डर में सिम्लिंक थीं, इसलिए उदाहरण के लिए .profile
->settings/.profile
, आदि। जब मैं परिवर्तन करता हूं, तो वे svn पेड़ में दिखाई देते हैं, जिसे मैं यह सुनिश्चित करने के लिए वापस कर सकता हूं कि मैं नहीं कर सकता जब मैं किसी अन्य सिस्टम पर जाता हूं तो मेरी कॉन्फ़िगरेशन सेटिंग्स खो दें।
तुम सच में SVN hardlinks रूप सिमलिंक पालन करने के लिए (क्योंकि यह एक बुरी बात ™ होगा आप निर्देशिका hardlinks नहीं कर सकते हैं) चाहते हैं, तो आप SVN ग्राहक स्रोत हैक करने इतना है कि यह किया होगा क्या तुम चाहते थे; लेकिन यह एक रखरखाव दुःस्वप्न होगा।
आप एक बाँध में सिमलिंक बनाने के साथ दूर हो सकता है माउंट लक्ष्य के निर्देश पर बिंदु, लेकिन वह यह खुद मुद्दों है है - आप यह पूरा करने के लिए रूट करने की आवश्यकता होगी, और उस में अजीब प्रविष्टियों छोड़ने समाप्त होता है अपने/proc/mounts इसे पूरा करने के लिए:
mount --bind /absolute/path/to/some/where/else project1/link1
शानदार उत्तर।मैं अभी के लिए सरल समाधान के साथ जाऊंगा। – Cyrille
ओह, मुझे बस याद आया कि मैंने ऐसा क्यों किया (काम करने वाली प्रतिलिपि के अंदर बाहरी निर्देशिका में सिम्लिंक): मुझे इस निर्देशिका में फ़ाइलों को लिखने में सक्षम होने के लिए www-data उपयोगकर्ता की आवश्यकता थी। चूंकि मैं अपनी होम निर्देशिका में मेरी कामकाजी प्रतिलिपि तक सभी तरह की अनुमतियों को बदलना नहीं चाहता, मुझे लगता है कि मुझे आपके वैकल्पिक समाधानों को ब्राउज़ करना होगा ... – Cyrille
लॉल, पीट, अनुमान लगाओ कि कौन सा सिम्लिंक मुझे यहां लाया? ;-) चलिए इसे जल्द ही ले जाएं! – gatopeich