2011-10-26 13 views
5

के रूप में सेट करें मैंने अभी गिट सीखने की कोशिश शुरू कर दी है और मुझे थोड़ा फंस गया है। हम अपनी "स्थिर" परियोजना को पकड़ने के लिए गिथब का उपयोग कर रहे हैं लेकिन मुझे रेपो के साथ काम करने में परेशानी हो रही है।अपाचे htdocs/subfolder को जीआईटी कामकाजी डीआईआर

मैं जानना चाहता हूं कि स्थानीय वेबसर्वर htdocs/[projectname] को काम करने वाली निर्देशिका के रूप में उपयोग करना संभव है - इस तरह मैं जिथब से रेपो क्लोन कर सकता हूं, स्थानीय सर्वर पर उस पर काम कर सकता हूं (इसलिए यह मुझे काम करने की अनुमति दे सकता है सबकुछ ठीक से लिखो) और फिर मंच -> वहां से प्रतिबद्ध करें।

मैं एमएएमपी पर्यावरण का उपयोग कर मैक पर काम कर रहा हूं। आवेदन एक PHP आधारित सीएमएस है। हम इसे एक निजी भंडार पर गिथब पर पकड़ रहे हैं। वर्तमान में Git /Users/Ben/Core-CMS काम कर निर्देशिका के रूप में प्रयोग किया जा रहा है, लेकिन यह बहुत मुश्किल चीजों का परीक्षण करना है - यह बहुत अच्छा होगा यदि काम कर निर्देशिका अपाचे htdocs निर्देशिका के अंदर था

मैं प्रो Git लेकिन मैं एक हो रहा है खरीदा गिट की अवधारणाओं को सीखने में बहुत कठिन समय - मैंने जानबूझकर जीयूआई का उपयोग करने से बचा है क्योंकि मैं 'धोखाधड़ी' शुरू करने से पहले गिट की आंतरिक कार्यप्रणाली सीखना चाहता हूं!

+0

आप अपनी स्थापना के बारे में अधिक जानकारी दे सकते हैं? (आपका कामकाजी डीआईआर, भाषा/फ्रेमवर्क जिसका आप उपयोग कर रहे हैं, आदि) –

+0

निश्चित रूप से - मैं एमएएमपी पर्यावरण का उपयोग कर मैक पर काम कर रहा हूं। आवेदन एक PHP आधारित सीएमएस है। हम इसे एक निजी भंडार पर गिथब पर पकड़ रहे हैं। वर्तमान में गिट काम करने वाले डीआईआर के रूप में/उपयोगकर्ता/बेन/कोर-सीएमएस का उपयोग कर रहा है लेकिन इससे चीजों का परीक्षण करना बहुत कठिन हो जाता है - अगर कामकाजी डीआईआरएपीएक्सएक्स डीआईआर के अंदर था तो यह बेहतर होगा। –

उत्तर

5

आप htdocs निर्देशिका में लिखने की अनुमति है, बस http://localhost/Core-CMS पर htdocs/Core-CMS और यह उपयोग करने के लिए /Users/Ben/Core-CMS चलते हैं।

यदि आप htdocs डीआईआर में नहीं लिख सकते हैं, तो मैं /Users/Ben/web बनाउंगा, अपनी परियोजनाओं को वहां रखूंगा और वहां से सेवा करने के लिए अपाचे बताऊंगा। अपाचे बताने के लिए /Users/Ben/web में देखने के लिए, अपनी परियोजनाओं की सेवा अपने अपाचे conf में निम्न पंक्ति के लिए देखने के लिए:

DocumentRoot /path/to/htdocs 

और साथ बदलें:

DodumentRoot /Users/Ben/web 
+0

गंभीरता से? मैंने नहीं सोचा था कि यह इतना आसान होगा! बहुत बहुत धन्यवाद :) –

+0

एक गिट रेपो सिर्फ '.git' के अंदर एक गूंगा निर्देशिका है, अंतर्निहित डेटा संरचनाएं वास्तव में सरल हैं। –

+1

ध्यान दें कि आपको अपने वेब सर्वर को '.git' निर्देशिका की सेवा करने से रोकना चाहिए, जिसमें निजी कॉन्फ़िगरेशन जानकारी (और आपके सभी कार्य-प्रगति) शामिल हैं। यदि आप स्पष्ट रूप से ऐसा नहीं करना चाहते हैं (और जोखिम भूलना) तो आप एक नंगे भंडार स्थापित करने पर विचार कर सकते हैं जो यहां वर्णित पर तैनात किए जाने पर तैनात है: http://toroid.org/ams/git-website -howto –

1

यह कोई समस्या नहीं होनी चाहिए। मैं यह हर समय कर रहा हूँ।

अपने सार्वजनिक निर्देशिका और चलाने के लिए स्विच:

git clone REPO_URL NAME_OF_DIR_TO_CLONE_TO 

पहले।

डीआईआर जहां आप एक गिट भंडार क्लोन करते हैं, मौजूद नहीं होना चाहिए।

आपको केवल अपने एसएस कुंजी को रिपॉजिटरी से सर्वर पर स्थापित गिटूब और गिट में धक्का देने के लिए अधिकृत किया गया है (या यदि आपने अपनी स्थानीय मशीन पर सबकुछ बढ़ाया है तो अपने क्लाइंट में)।

फिर आप ऐसा करते हैं जो केवल स्थानीय है और यदि आप कर चुके हैं तो आप अपने परिवर्तन जिथब में डाल सकते हैं।

वेबसर्वर आपकी कार्य निर्देशिका को DocumentRoot के रूप में उपयोग करने का एक और तरीका होगा।

मुझे आशा है कि मैं यहाँ आपकी समस्या को याद नहीं किया था;)

+0

धन्यवाद - त्वरित प्रश्न - जब आप कहते हैं "आप जिस गंदगी को क्लोन करते हैं, वह मौजूद नहीं है।" आपका सही सही क्या मतलब है? उस नाम के साथ एक डीआईआर क्लोन पथ में मौजूद नहीं हो सकता है? –

+0

यदि आप इस "गिट क्लोन यूआरएल एबीसी" जैसी गिट प्रोजेक्ट क्लोन करते हैं तो एबीसी नामक एक निर्देशिका नहीं है - यहां तक ​​कि एक खाली भी नहीं - पहले से ही इसे बनाया जाएगा। यदि आप ऐसा कुछ करने की कोशिश करते हैं तो गिट एक त्रुटि संदेश फेंक देगा। –

+0

तो - यह जांचने के लिए सही है - अगर मैं अपने मैक पर एक नामित डीआईआर को गिट रेपो क्लोन करता हूं, तो गिट में उस रेपो के साथ फिर से काम करने के लिए (कल, कल) तो मुझे टर्मिनल में उस डीआईआर पर नेविगेट करने की आवश्यकता होगी और गिट पता चलेगा कि रेपो क्या है? क्योंकि मुझे समस्या है कि गिट हमेशा भूल जाता है कि मैंने किस परियोजना को खोला था और मुझे 'खुली मौजूदा' प्रशंसा नहीं मिल रही है (मुझे यह भी यकीन नहीं है कि मैं ईमानदार होने के बाद भी हूं!) –

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