मैं एक linux/अपाचे/php वेब इस तरह परियोजना के लिए मेरी निर्देशिका संरचना योजना बना रहा हूँ:घटक आधारित Git और सिमलिंक के साथ वेब परियोजना निर्देशिका लेआउट
केवल www.example.com/webroot/
अपाचे
www.example.com/
webroot/
index.php
comp1/
comp2/
component/
comp1/
comp1.class.php
comp1.js
comp2/
comp2.class.php
comp2.css
lib/
lib1/
lib1.class.php
में उजागर किया जाएगा component/
और lib/
निर्देशिका केवल php पथ में होगी।
वेबूट निर्देशिका में सीएसएस और जेएस फ़ाइलें दिखाई देने के लिए मैं symlinks का उपयोग करने की योजना बना रहा हूं।
- घटकों और पुस्तकालयों द्वारा लेआउट, फ़ाइल प्रकार के अनुसार नहीं और नहीं के साथ "सार्वजानिक 'या' गैर सार्वजनिक ', index.php एक अपवाद यह है:।
webroot/ index.php comp1/ comp1.js (symlinked) comp2/ comp2.css (symlinked)
मैं इन सिद्धांतों का अनुसरण करने की कोशिश की आसान विकास के लिए।
- सार्वजनिक वेब निर्देशिका में फ़ाइलों के न्यूनतम सेट को उजागर करें और वेब पर सबकुछ अपरिवर्तनीय बनाएं। सिमलिंकिंग फाइलें जो घटकों और libs के लिए सार्वजनिक स्थान पर सार्वजनिक होने की आवश्यकता है, लेकिन अभी भी लेआउट को मिरर करना इसलिए लिंक और परिणामी एचटीएमएल कोड में घटक और लाइब्रेरी संरचना भी दिखाई दे रही है , जो विकास में मदद कर सकता है।
- गिट उपयोग सुरक्षित होना चाहिए और हमेशा काम करना चाहिए। यह Git करने के लिए एक सिमलिंक जोड़ने के लिए कुछ प्रक्रिया का पालन करने के लिए ठीक हो सकता है, लेकिन उसके बाद उन्हें बाहर की जाँच या शाखाओं को बदलने सुरक्षित रूप से संभाला जाना चाहिए और साफ
सही ढंग से एकल फ़ाइलों के symlinking संभाल git होगा कैसे, वहाँ है कुछ विचार करने के लिए?
जब छवियों की बात आती है तो मुझे निर्देशिकाओं को लिंक करने की आवश्यकता होगी, गिट के साथ इसे कैसे संभालना है?
component/
comp3/
comp3.class.php
img/
img1.jpg
img2.jpg
img3.jpg
वे यहाँ जोड़ा जाना चाहिए:
webroot/
comp3/
img/ (symlinked ?)
तो उस के लिए सिमलिंक का उपयोग कर है नुकसान शायद मैं सीधे webroot/पेड़ के लिए छवियों को स्थानांतरित कर सकता है, जो तीसरे के लिए पहले सिद्धांत टूट जाएगा (Git व्यावहारिकता)।
तो यह एक गिट और सिम्लिंक प्रश्न है। लेकिन मुझे PHP लेआउट के बारे में टिप्पणियां सुनने में दिलचस्पी होगी, शायद आप इसके लिए टिप्पणी फ़ंक्शन का उपयोग करना चाहते हैं।
इसे इंगित करने के लिए धन्यवाद। मैंने अलग-अलग परियोजनाओं के रूप में घटकों को देखने का विचार नहीं किया था। मैं बाद के बिंदु पर घटकों को विभाजित करने के बारे में सोचूंगा, लेकिन अभी के लिए मैं उन्हें एक भंडार में रखूंगा, जो मुझे इसे सरल रखने में मदद करता है - कार्लथोरवाल्ड - उर्फ – user89021
मुझे यकीन नहीं है लेकिन यह समाधान इस बात पर ध्यान नहीं देता है कि सिम्लिंकिंग का कारण लगभग सभी फ़ाइलों को एक अप्रत्याशित गैर सार्वजनिक निर्देशिका में रखना था? मैं सवाल अब स्पष्ट कर दूंगा। - karlthorwald - उर्फ – user89021
@ user89021: कोई समस्या नहीं: आप sylink के साथ submodules जोड़ सकते हैं (एक सबमिशन के लिए symlink!)। यहां ध्यान देने योग्य महत्वपूर्ण बात यह है कि गिट का मतलब * एक * रेपो में सबकुछ शामिल नहीं है: http://stackoverflow.com/questions/984707/what-are-the-git-limits/984973#984973 – VonC