2012-10-30 10 views
16

मैं गिट के लिए काफी नया हूं, और प्रो गिट बुक @http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging पढ़ा है। मेरा सवाल यह है कि अगर मैं आज क्या कर रहा हूं तो उत्पादन सर्वर और रिमोट गिट रेपो के साथ काम करने का पसंदीदा तरीका है।उत्पादन सर्वर पर गिट "उत्पादन शाखा" खींचने के लिए "उचित" तरीका

मेरे पास तीन रिमोट शाखाओं का उपयोग करके गिटहब पर मेरा रेपो होस्ट किया गया है: विकास -> परीक्षण -> मास्टर।

जब भी 'परीक्षण' शाखा को काम करने के लिए सत्यापित किया गया है, तो मैं git merge 'मास्टर' 'परीक्षण' (तेज़ आगे?) के साथ स्थानीय रूप से, और git push 'मास्टर' गिटहब में।

उत्पादन सर्वर (/opt/www/url.com/) मैंने किया है पर:

git init 
git remote add origin https://github.com/..... 
git pull origin master 

अब हर मैं मास्टर अपडेट करना चाहते हैं मैं एक git pull

git pull origin master 

उत्पादन जारी रिमोट में किसी भी बदलाव को कभी भी धक्का नहीं देगा। और स्थानीय परिवर्तन नहीं होंगे। क्या मैं इसे सही कर रहा हूँ? यदि नहीं, तो उत्पादन में अपडेट खींचने का पसंदीदा तरीका क्या है?

संपादित करें # 1: मैं उत्पादन सर्वर पर किसी भी संघर्ष का प्रबंधन नहीं करना चाहता, जिसे मैं अब सामना कर रहा हूं (किसी भी तरह मैंने कुछ गलत किया है)। मैं बस नवीनतम अद्यतन मास्टर शाखा को खींचना चाहता हूं, और उस पर स्विच करना चाहता हूं।

उत्तर

12

आप उपयोग करना चाहिए:

git init --bare 

एक रेपो कि एक काम कर पेड़ की ज़रूरत नहीं होगी, कोई संघर्ष हो जाएगा जिसका मतलब है कि प्रारंभ करने के लिए।

+3

इसे डाउन-वोट क्यों दिया जाता है? –

+0

यह एक अच्छा सवाल है @AlainANDRE –

+0

यदि उत्पादन सर्वर की एक प्रतिलिपि प्रतिलिपि नहीं है तो उत्पादन सर्वर कैसे काम करेगा? – starbeamrainbowlabs

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