2009-09-18 13 views
366

से परिवर्तनों के साथ एक स्थानीय भंडार को अद्यतन करना मुझे जिथब से स्थानीय रूप से जांच की गई एक परियोजना मिली है, क्योंकि रिमोट रेपो के बाद से इसमें बदलाव हुए हैं। नवीनतम परिवर्तनों के साथ मेरी स्थानीय प्रति को अपडेट करने के लिए सही आदेश क्या है?एक गीथब रिपोजिटरी

+16

यह ध्यान देने योग्य है कि जिथब ने गिट और गिथब का उपयोग करने के लिए बहुत ही जानकारीपूर्ण और उपयोगी मार्गदर्शिकाओं का एक सेट तैयार किया है। जब मैंने पहली बार गिट में कदम बढ़ाया तो मैंने उन्हें अमूल्य पाया। https://help.github.com/ –

+18

@ हर सवाल के लिए मार्कबंबलिंग संभव है एक टिप्पणी "आरटीएफएम" जोड़ें ... लेकिन मैं इस सवाल का जवाब देने से बहुत खुश हूं। – jm666

उत्तर

513

शायद में विलय हो जाएगा:

git pull origin master 
+20

यह शिकायत करता है: "आपने रिमोट 'मूल' से खींचने के लिए कहा था, लेकिन शाखा को निर्दिष्ट नहीं किया था। क्योंकि यह आपकी वर्तमान शाखा के लिए डिफ़ॉल्ट कॉन्फ़िगर किए गए दूरस्थ नहीं है, आपको कमांड लाइन पर एक शाखा निर्दिष्ट करनी होगी।" तो मैंने "$ git पुल मूल मास्टर" की कोशिश की और यह ठीक काम किया। –

+6

गिट पुल मूल मास्टर – Hoto

+0

मैंने कुछ फाइलों को हटा दिया और यह उन्हें फिर से नहीं ला रहा है, कोई विचार? –

51
git fetch [remotename] 

हालांकि आपको अपनी स्थानीय शाखाओं में किसी भी बदलाव को मर्ज करने की आवश्यकता होगी। Github पर एक दूरस्थ शाखा ट्रैकिंग है कि आप एक शाखा पर रहे हैं, तो

git pull 

पहले लाए जाने, और फिर पता लगाया शाखा

+2

यदि आप 'गिट फ़ेच' विधि का उपयोग कर रहे हैं, तो आप 'गिट fetch -t' के साथ टैग भी लेना चाहेंगे। यदि आप परिवर्तनों से संतुष्ट हैं ('गिट लॉग HEAD..FETCH_HEAD'), तो आप उन्हें' गिट मर्ज FETCH_HEAD' के साथ मर्ज कर सकते हैं। –

56

यह हर डिफ़ॉल्ट रेपो के लिए काम करना चाहिए:

git pull origin master 

तो अपने डिफ़ॉल्ट शाखासे अलग है, आप शाखा का नाम निर्दिष्ट करना होगा: - Git पुल "https://github.com/yourUserName/yourRepo.git"

+2

वास्तव में नहीं। घातक: आपके रेपो मामले में रिमोट रेफ मास्टर –

+1

@Eijkhout probablt नहीं मिला, कोई मास्टर शाखा नहीं है, और कुछ अन्य शाखा डिफ़ॉल्ट रूप से सेट की गई है – Hoto

7

, तो आप सिर्फ आदेश नीचे का उपयोग करने के कुछ धारणाएं मैं इसे थोड़ा सा सरल बनाने के लिए कर दूंगा। हम मान लेंगे कि आप अपनी master शाखा को अपडेट करना चाहते हैं।

यदि आपने स्थानीय रूप से कोई बदलाव नहीं किया है, तो आप git pull का उपयोग किसी भी नए काम को कम करने और उन्हें master पर जोड़ने के लिए कर सकते हैं।

git pull origin master 

आप परिवर्तन किए हैं, और आप एक नया मर्ज प्रतिबद्ध जोड़ने से बचना चाहते हैं, git pull --rebase का उपयोग करें।

git pull --rebase origin master 

git pull --rebase भले ही आप परिवर्तन नहीं किया और शायद अपने सबसे अच्छे कॉल है है काम करेंगे।

0

यह सवाल बहुत ही सामान्य है और देखते हैं पहले से ही सेट मूल मास्टर के साथ

git pull origin my_default_branch_name