सवाल 'गिट पुल' और 'गिट फ़ेच' के बीच क्या अंतर है?


मॉडरेटर नोट: यह देखते हुए कि यह प्रश्न पहले से ही है साठ-चार जवाब इसे पोस्ट किया गया, इस पर विचार करें कि आप हैं या नहीं कुछ भी नया योगदान एक और पोस्ट करने से पहले।

बीच अंतर क्या हैं git pull तथा git fetch?


10149
2017-11-15 09:51


मूल


मुझे गिट फ़ेच के बारे में यह अच्छी तरह से लिखित आलेख मिला और गिट खींचने के लायक है: longair.net/blog/2009/04/16/git-fetch-and-merge - Marcos Oliveira
हमारा वैकल्पिक दृष्टिकोण बन गया है git fetch; git reset --hard origin/master हमारे वर्कफ़्लो के हिस्से के रूप में। यह स्थानीय परिवर्तनों को दूर करता है, आपको मास्टर के साथ अद्यतित रखता है लेकिन यह सुनिश्चित करता है कि आप वर्तमान परिवर्तनों पर शीर्ष पर नए बदलाव न करें और गड़बड़ न करें। हमने इसे थोड़ी देर के लिए इस्तेमाल किया है और यह मूल रूप से अभ्यास में बहुत सुरक्षित महसूस करता है। बस पहले किसी भी कार्य-प्रगति को जोड़ने / प्रतिबद्ध / छेड़छाड़ करना सुनिश्चित करें! - Michael Durrant
सुनिश्चित करें कि आप गिट स्टैश का सही तरीके से उपयोग कैसे करें। यदि आप 'पुल' और 'फ़ेच' के बारे में पूछ रहे हैं तो शायद 'स्टैश' को समझाए जाने की भी आवश्यकता होगी ... - Henry Heleine
Mercurial से आने वाले बहुत से लोग "गिट पुल" का उपयोग करते रहते हैं, यह सोचते हुए कि यह "एचजी पुल" के बराबर है। जो यह नहीं है गिट के बराबर "एचजी पुल" "गिट फ़ेच" है। - Serge Shultz
गिट fetch कमांड शाखा के साथ अद्यतन कोड लाने और अपने स्थानीय में गठित शाखाएं भी मिल जाएगी, गिट पुल कमांड केवल केवल वर्तमान शाखा के अद्यतन कोड - Kartik Patel


जवाब:


सबसे सरल शब्दों में, git pull एक करता है git fetch ए के बाद git merge

आप एक कर सकते हैं git fetch किसी भी समय अपनी रिमोट-ट्रैकिंग शाखाओं को अपडेट करने के लिए refs/remotes/<remote>/

यह ऑपरेशन कभी भी आपकी अपनी स्थानीय शाखाओं को बदलता नहीं है refs/heads, और आपकी कामकाजी प्रति को बदले बिना करना सुरक्षित है। मैंने लोगों के बारे में भी सुना है git fetch समय-समय पर पृष्ठभूमि में एक क्रॉन नौकरी में (हालांकि मैं ऐसा करने की सिफारिश नहीं करता)।

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

गिट दस्तावेज: गिट खींचो


8470
2017-11-15 09:52



"ए" गिट पुल "वह है जो आप अपने भंडार को अद्यतित करने के लिए करेंगे" <- क्या पहले से ही भंडार अद्यतन नहीं किया गया है? क्या आपका मतलब यह नहीं है कि यह आपकी स्थानीय शाखाओं को दूरस्थ शाखाओं के साथ अद्यतित करता है? विलय के लिए: यह उन शाखाओं की स्थानीय प्रतियों के साथ रिमोट शाखाओं को विलय करता है, या यह वास्तव में यहां क्या विलय करता है? - Albert
@ अल्बर्ट: हाँ, यह अजीब बात है। git pull हमेशा में विलय करेंगे वर्तमान शाखा। तो आप चुनते हैं कि आप कौन सी शाखा खींचना चाहते हैं से, और यह इसे वर्तमान शाखा में खींचता है। से शाखा स्थानीय या रिमोट हो सकती है; यह एक दूरस्थ शाखा भी हो सकती है जो पंजीकृत नहीं है git remote (जिसका अर्थ है कि आप पर एक यूआरएल पास करते हैं git pull कमांड लाइन)। - intuited
@espertus: नहीं। पुशिंग स्वचालित रूप से विलय नहीं करता है। उपयोगकर्ता को खींचने की उम्मीद है, स्थानीय रूप से किसी भी विलय संघर्ष को हल करना, फिर रिमोट पर वापस धक्का। - Greg Hewgill
अगर मैं हूं /home/alice/ और करो git fetch /home/bob, मुझे बाद के पैरामीटर को किस पैरामीटर को पास करना चाहिए git merge ? - ripper234
गिट सीखने वाले लोगों को ध्यान दें: pull वास्तव में एक द्वारा अनुकरण नहीं किया जा सकता है fetch प्लस ए merge। मैंने अभी एक बदलाव लाया जहां केवल एक दूरस्थ शाखा सूचक बदलता है, और merge कुछ भी करने से मना कर दिया। pullदूसरी तरफ, मेरी ट्रैकिंग शाखा तेजी से आगे बढ़ती है। - Roman Starkov


  • जब आप उपयोग करते हैं pull, गिट आपके लिए स्वचालित रूप से अपना काम करने की कोशिश करता है। यह संदर्भ संवेदनशील है, इसलिए गिट उस शाखा में किसी भी खींचने वाली प्रतिबद्धताओं को विलय करेगा जो आप वर्तमान में काम कर रहे हैं। pull  स्वचालित रूप से आपको उनकी समीक्षा करने के बिना स्वचालित रूप से काम करता है। यदि आप अपनी शाखाओं का बारीकी से प्रबंधन नहीं करते हैं, तो आप लगातार संघर्ष में भाग ले सकते हैं।

  • जब आप fetch, गिट लक्ष्य शाखा से किसी भी काम को इकट्ठा करता है जो आपकी वर्तमान शाखा में मौजूद नहीं है और उन्हें अपने स्थानीय भंडार में स्टोर करता है। तथापि, यह उन्हें आपकी वर्तमान शाखा के साथ विलय नहीं करता है। यह विशेष रूप से उपयोगी होता है यदि आपको अपनी रिपॉजिटरी को अद्यतित रखने की आवश्यकता है, लेकिन कुछ ऐसी चीजों पर काम कर रहे हैं जो आपकी फ़ाइलों को अपडेट करते हैं तो तोड़ सकते हैं। अपनी मास्टर शाखा में काम को एकीकृत करने के लिए, आप इसका उपयोग करते हैं merge


1850
2017-08-18 08:53



सहमत, महान टिप्पणी। यही कारण है कि मैं गिट खींच से नफरत करता हूं। एक संशोधन टूल को आपके लिए कोड संपादन करने के लिए कभी समझदारी कब होगी? और यह नहीं है कि दो फाइलों में विलय क्या कर रहा है? क्या होगा यदि उन दो संपादनों को फ़ाइल में शारीरिक रूप से अलग किया गया है, लेकिन व्यावहारिक रूप से बाधाओं पर? - Lee Dixon
@elexhobby लघु डाल दिया, git fetch केवल आपके अपडेट करता है .git/ निर्देशिका (AKA: स्थानीय भंडार) और बाहर कुछ भी नहीं .git/ (एकेए: काम कर रहे पेड़)। यह आपकी स्थानीय शाखाओं को नहीं बदलता है, और यह स्पर्श नहीं करता है master या तो। यह छूता है remotes/origin/master हालांकि (देखें git branch -avv)। यदि आपके पास अधिक रिमोट हैं, तो कोशिश करें git remote update। यह है एक git fetch एक कमांड में सभी रिमोट्स के लिए। - Tino
@ टिनो आपका वास्तव में सबसे महत्वपूर्ण बिंदु है। लोग नहीं जानते कि "रिमोट" शाखाएं वास्तव में हैश के गुच्छा के रूप में संग्रहित की जाती हैं .git/refs/remotes/origin/। - Chris
जब आप प्राप्त करते हैं, तो गिट लक्ष्य शाखा से कोई भी काम एकत्र करता है जो आपकी वर्तमान शाखा में मौजूद नहीं है और उन्हें आपके स्थानीय भंडार में संग्रहीत करता है - मैं कैसे देख सकता हूं कि रिमोट से क्या लाया गया था और मैं इसे अपनी स्थानीय शाखाओं में कैसे विलय कर सकता हूं? - アレックス
@ टिनो जो मुझे अभी भी समझ में नहीं आता है ... क्या बात है? अगर यह केवल अपडेट होता है तो fetch का उपयोग क्यों करें .git? इरादा लाभ क्या है और इसके बाद मुझे क्या करना चाहिए? - BadHorsie


एसवीएन जैसे अधिक पारंपरिक स्रोत नियंत्रण उपकरण के दर्शन के साथ गिट के डिजाइन दर्शन को अलग करना महत्वपूर्ण है।

सबवर्सन को क्लाइंट / सर्वर मॉडल के साथ डिज़ाइन और बनाया गया था। एक एकल भंडार है जो सर्वर है, और कई क्लाइंट सर्वर से कोड ला सकते हैं, उस पर काम कर सकते हैं, फिर उसे सर्वर पर वापस ले जा सकते हैं। धारणा यह है कि क्लाइंट ऑपरेशन करने की आवश्यकता होने पर हमेशा सर्वर से संपर्क कर सकता है।

गिट को एक केंद्रीय वितरक की आवश्यकता के बिना एक अधिक वितरित मॉडल का समर्थन करने के लिए डिज़ाइन किया गया था (हालांकि यदि आप चाहें तो निश्चित रूप से एक का उपयोग कर सकते हैं)। इसके अलावा गिट डिज़ाइन किया गया था ताकि क्लाइंट और "सर्वर" को एक ही समय में ऑनलाइन होने की आवश्यकता न हो। गिट को डिज़ाइन किया गया था ताकि अविश्वसनीय लिंक पर लोग ईमेल के माध्यम से कोड का आदान-प्रदान कर सकें। पूरी तरह से डिस्कनेक्ट करना और गिट के माध्यम से कोड का आदान-प्रदान करने के लिए सीडी जला देना संभव है।

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

  • git fetchवह आदेश है जो कहता है "रिमोट रिपोजिटरी की मेरी स्थानीय प्रति अद्यतित करें।"

  • git pull कहता है "रिमोट रिपोजिटरी में बदलाव लाएं जहां मैं अपना कोड रखता हूं।"

सामान्य रूप से git pull ऐसा करके ऐसा करता है git fetch रिमोट रिपोजिटरी की स्थानीय प्रतिलिपि अद्यतित करने के लिए, और उसके बाद परिवर्तनों को अपने कोड भंडार में और संभवतः आपकी कार्यशील प्रतिलिपि में विलय करना।

दूर लेना यह ध्यान में रखना है कि कम से कम अक्सर होते हैं तीन प्रतियां आपके वर्कस्टेशन पर एक परियोजना का। एक प्रतिलिपि आपके स्वयं के प्रतिबद्ध इतिहास के साथ आपकी खुद की भंडार है। दूसरी प्रति आपकी कार्यशील प्रति है जहां आप संपादन और निर्माण कर रहे हैं। तीसरी प्रतिलिपि एक दूरस्थ भंडार की आपकी स्थानीय "कैश" प्रति है।


1008
2018-03-31 18:43



तकनीकी रूप से, स्थानीय और दूरस्थ भंडार वास्तव में एक हैं और वही हैं। गिट में, एक भंडार एक है DAG अपने माता-पिता को इंगित करने का काम करता है। शाखाएं तकनीकी रूप से, काम करने के सार्थक नामों से ज्यादा कुछ नहीं हैं। स्थानीय और दूरस्थ शाखाओं के बीच एकमात्र अंतर यह है कि रिमोट वाले के साथ प्रीफ़िक्स किया गया है remoteName/  ग्राउंड अप से गिट एक बहुत अच्छा पढ़ा है। एक बार जब आप समझते हैं कि गिट कैसे काम करता है - और यह खूबसूरती से है सरल, वास्तव में - सबकुछ सिर्फ समझ में आता है। - Emil Lundberg
स्पष्टीकरण के लिए बहुत बहुत धन्यवाद। मुझे अब तक वास्तव में समझ में नहीं आया कि गिट डिज़ाइन किया गया था ताकि आपके पास केंद्रीय भंडार न हो। गिट का वर्णन करते समय हर कोई हमेशा "डीवीसीएस" कहता है, लेकिन अपेक्षाकृत नए प्रोग्रामर के रूप में, इसका मतलब है कि मेरे लिए कुछ भी नहीं है। मैंने कभी नहीं किया देखा एक सीवीसीएस, और मैंने कभी भी दूसरों के साथ सहयोग करते समय एक केंद्रीय रिमोट रिपोजिटरी के साथ काम नहीं किया है (यानी गितूब), इसलिए अब तक मुझे यह समझना नहीं है कि गिट विशेष क्या है। - Brian Peterson
तो, इस पर आधारित, क्रॉन नौकरी के साथ गिट-फ़ेच करना क्यों अच्छा नहीं है? हमेशा अपनी स्थानीय मशीन पर काम कर रहे रिमोट की एक प्रति रखना एक अच्छा विचार है। असल में, मुझे एक स्क्रिप्ट लिखना पसंद है जो यह देखने के लिए जांच करता है कि मैंने पिछले 24 घंटों में अपने रिमोट को अपडेट किया है और इसे इंटरनेट कनेक्शन के लिए udev हुक से जोड़ रहा है। - Brian Peterson
एक कारण यह है कि क्रॉन नौकरी पाने का अच्छा विचार क्यों नहीं है: अक्सर जब कोई नया टिकट या किसी शाखा के अपडेट पर काम करते हैं, तो मुझे बदलावों को देखना पसंद है। यदि परिवर्तन के दौरान परिवर्तन नहीं आते हैं, तो मैं अपने साथी प्रोग्रामर से पूछने में अधिक भरोसा रखूंगा 'अरे क्या आपने धक्का दिया?'। मुझे यह भी पता चला कि मैंने अंतिम बार प्राप्त होने के बाद से भंडार में कितना 'मंथन' किया था। यह मुझे इस भंडार में वर्तमान में किए जा रहे परिवर्तनों की मात्रा और गति की भावना देने में भी मदद करता है। - Michael Durrant
@ नबीत थिंग यह है कि, गिट सामग्री उन्मुख है। यह केवल एक बार डेटा स्टोर करता है, और इसे कई बार इंगित करता है। यही कारण है कि गिट में, मूल के शीर्ष पर भी कई काम करता है, रेपो के आकार को प्रभावित नहीं करता है, क्योंकि अधिकांश वस्तुएं समान होती हैं। - cst1992


यहाँ है ओलिवर स्टील की छवि यह सब कैसे एक साथ फिट बैठती है:

enter image description here

यदि पर्याप्त रुचि है, तो मुझे लगता है कि मैं छवि को जोड़ने के लिए अद्यतन कर सकता हूं git clone तथा git merge...


664
2018-06-09 13:30



एक अद्यतन छवि के साथ git clone तथा git merge बहुत मददगार होगा! - MEMark
हाँ, कृपया जोड़ें git merge - यह स्पष्ट रूप से यह दिखाना चाहिए merge अलग से बुलाया कॉलिंग के समान नहीं है pull इसलिये pull केवल रिमोट से विलय कर रहा है और आपकी स्थानीय शाखा में आपकी स्थानीय गतिविधियों को अनदेखा कर रहा है जो रिमोट शाखा से खींचा जा रहा है। - JustAMartin
एक तस्वीर एक हजार शब्दों के बराबर होती है! क्या क्लोन के साथ अपडेट की गई छवि और डेटा प्रवाह कहीं मर्ज कर दिया गया है? आरेख में पहले से मौजूद किसी भी अन्य डेटा प्रवाह के अलावा? - shikhanshu
@Contango कृपया क्लोन जोड़ें और विलय करें। मेरे जैसे नए शौक के लिए सहायक होगा। - rents
क्लोन दिखाते हुए दो आरेख हैं और अन्य उत्तरों (नीचे) में th3sly और thedarkpassenger द्वारा विलय करते हैं। - intotecho


एक उपयोग का मामला git fetch यह है कि निम्नलिखित आपको अंतिम आखिरी पुल के बाद रिमोट शाखा में कोई भी बदलाव बताएगा ... ताकि आप वास्तविक खींच करने से पहले जांच सकें, जो आपकी वर्तमान शाखा और कामकाजी प्रतिलिपि में फ़ाइलों को बदल सकता है।

git fetch
git diff ...origin

428
2018-05-07 19:23



महान जोड़! मैं बिंदुओं से उलझन में था, यह नहीं है: गिट diff उत्पत्ति - harm
क्यों नहीं git diff ..origin? - Erik Allik
गिट diff उत्पत्ति और गिट diff ..origin काम करने लगते हैं लेकिन यह अजीब नहीं ... सामान - Marc
@ कॉम्पस्ट्रेच एक जगह नहीं माना गया था। git diff ...origin के बराबर है git diff $(git-merge-base HEAD origin) origin (देखें git diff [--options] <commit>...<commit> [--] [<path>…] का संभाग kernel.org/pub/software/scm/git/docs/git-diff.html#_description), जो से अलग है git diff origin; git diff ...origin अवधारणात्मक रूप से किए गए परिवर्तन हैं origin चूंकि वर्तमान शाखा से ब्रांच किया गया है origin, जबकि git diff origin वर्तमान शाखा में किए गए परिवर्तनों के विपरीत भी शामिल है क्योंकि यह ब्रांच किया गया है origin। - Max Nanasy
इनमें से कोई भी .. आदेश मेरे लिए काम नहीं करता (विंडोज़ पर), लेकिन git diff origin/master जैसा कि नीचे उल्लिखित है, काम करता है - Brian Burns


यह समझने के लिए मुझे थोड़ा सा खर्च आया कि क्या अंतर था, लेकिन यह एक साधारण स्पष्टीकरण है। master आपके लोकहोस्ट में एक शाखा है।

जब आप एक रिपॉजिटरी क्लोन करते हैं तो आप स्थानीय होस्ट में संपूर्ण भंडार प्राप्त करते हैं। इसका मतलब है कि उस समय आपके पास मूल / मास्टर पॉइंटर है HEAD और मास्टर इसके लिए इशारा करते हैं HEAD

जब आप काम करना शुरू करते हैं और करते हैं तो आप मास्टर पॉइंटर को अग्रिम करते हैं HEAD + आपका काम करता है। लेकिन मूल / मास्टर पॉइंटर अभी भी इंगित कर रहा है कि जब आपने क्लोन किया था तो यह क्या था।

तो अंतर होगा:

  • यदि आप एक करते हैं git fetch यह रिमोट रिपोजिटरी में सभी बदलाव लाएगा (GitHub) और मूल / मास्टर पॉइंटर को ले जाएं HEAD। इस बीच आपका स्थानीय शाखा मास्टर इस बात पर ध्यान रखेगा कि यह कहां है।
  • यदि आप एक करते हैं git pull, यह मूल रूप से लाएगा (जैसा कि पहले बताया गया है) और अपनी मास्टर शाखा में कोई भी नया परिवर्तन मर्ज करें और पॉइंटर को ले जाएं HEAD

342
2018-05-11 18:37



मूल / मास्टर एक स्थानीय शाखा है जो मूल पर मास्टर की एक प्रति है। जब आप लाते हैं, तो आप स्थानीय: / मूल / मास्टर अपडेट करते हैं। एक बार जब आप वास्तव में ग्रोक करते हैं कि गिट में सबकुछ एक शाखा है, तो यह बहुत समझ में आता है और विभिन्न परिवर्तनों को बनाए रखने, त्वरित स्थानीय शाखाएं बनाने, विलय करने और पुनर्जीवित करने का एक बहुत शक्तिशाली तरीका है, और आम तौर पर सस्ते शाखाओं से बहुत अधिक मूल्य मिलता है आदर्श। - cam8001
अभी भी भ्रमित मैंने सोचा git fetch सचमुच रिमोट रेपो पर अपने स्थानीय रेपो में परिवर्तन डाउनलोड करना था, लेकिन उन्हें प्रतिबद्ध नहीं करना - यानी, उन्हें अभी भी आपके स्थानीय रेपो में जोड़ा / प्रतिबद्ध होना आवश्यक है। - krb686
प्राप्त करने के लिए केवल दूरस्थ / मूल (github) से आपके स्थानीय मूल में खींचता है। लेकिन यह इसे आपकी वास्तविक कामकाजी फाइलों में विलय नहीं करता है। यदि आप एक पुल करते हैं तो यह आपके वर्तमान काम करने वाली फाइलों को लाएगा और विलय करेगा - Gerardo


कभी-कभी एक दृश्य प्रतिनिधित्व मदद करता है।

enter image description here


180
2018-01-25 17:28



मुझे लगता है कि तस्वीर यह दिखाने के लिए मिल गई है कि यह स्थानीय रेपो को भी प्रभावित करता है। यही है, गिट पुल स्थानीय रेपो और कामकाजी प्रति को प्रभावित करने का एक संयोजन है। अभी ऐसा लगता है कि यह सिर्फ काम करने वाली प्रति को प्रभावित करता है। - 太極者無極而生
@ 太極 者 無極 而 生 सहमत - यह छवि बहुत भ्रामक है, क्योंकि यह ऐसा दिखती है git pull है रस्सी कूदना fetch, जो निश्चित रूप से गलत है। - forresthopkinsa
@ thedarkpassenger आप अपनी छवि को अपडेट क्यों नहीं करते हैं। फिर, यह नए लोगों के लिए सबसे अच्छा स्नैप शॉट होगा। ^^ - cmcromance
'स्थानीय रिपोजिटरी' और 'वर्किंग कॉपी' के बीच क्या अंतर है? क्या वे कंप्यूटर पर स्थानीय नहीं हैं? - theITvideos


संक्षिप्त

git fetch के समान है pull लेकिन विलय नहीं करता है। यानी यह दूरस्थ अपडेट लाता है (refs तथा objects) लेकिन आपका स्थानीय वही रहता है (यानी। origin/master अद्यतन हो जाता है लेकिन master वैसा ही रहता है) ।

git pull एक रिमोट से नीचे खींचता है और तुरंत विलीन हो जाता है।

अधिक

git clone क्लोन एक रेपो।

git rebase आपकी वर्तमान शाखा से सामान बचाता है जो अपस्ट्रीम शाखा में अस्थायी क्षेत्र में नहीं है। आपकी शाखा अब आपके बदलावों से पहले जैसी ही है। इसलिए, git pull -rebase रिमोट चेंज को नीचे खींचें, अपनी स्थानीय शाखा को रिवाइंड करें, अपनी मौजूदा शाखा के शीर्ष पर अपने बदलावों को एक-एक करके एक-एक करके जब तक आप अद्यतित न हों।

इसके अलावा, git branch -a आपको दिखाएगा कि आपकी सभी शाखाओं - स्थानीय और रिमोट के साथ क्या चल रहा है।

यह ब्लॉग पोस्ट उपयोगी था:

गिट पुल, गिट फ़ेच और गिट क्लोन (और गिट रिबेस) के बीच का अंतर - माइक पियर्स

और कवर git pull, git fetch, git clone तथा git rebase

====

अद्यतन करें

मैंने सोचा कि मैं यह दिखाने के लिए अपडेट करूंगा कि आप वास्तव में अभ्यास में इसका उपयोग कैसे करेंगे।

  1. रिमोट से अपने स्थानीय रेपो अपडेट करें (लेकिन मर्ज न करें):

    गिट fetch

  2. अपडेट डाउनलोड करने के बाद, अंतरों को देखते हैं:

    गिट diff मास्टर मूल / मास्टर

  3. यदि आप उन अपडेट से खुश हैं, तो विलय करें:

    गिट खींचो

टिप्पणियाँ:

चरण 2 पर: स्थानीय और रिमोट के बीच अंतर पर अधिक के लिए, देखें: रिमोट शाखा के साथ स्थानीय गिट शाखा की तुलना करें?

चरण 3 पर: यह संभवतः अधिक सटीक (उदा। एक तेज़ बदलते रेपो पर) करने के लिए है git rebase origin यहाँ। एक और जवाब में @ जस्टिन ओहम्स टिप्पणी देखें।

यह भी देखें: http://longair.net/blog/2009/04/16/git-fetch-and-merge/ 


166
2018-04-13 17:31



मुझे लगता है जैसे कोई स्थानीय कोड को "टिप" को प्रतिबिंबित करना चाहता है, तो उन्हें उपयोग करना चाहिए git clone। मैंने टिप को कोट्स में रखा, जैसा कि मुझे लगता है कि इसका मतलब यह होगा कि जो कुछ भी मास्टर है और क्या कोई github.com से "ज़िप के रूप में डाउनलोड करेगा" - Chris K
अगर आप गिट लाने के बाद परिवर्तनों से खुश नहीं हैं तो क्या होगा? आगे क्या करना है? - Kugutsumen
रिबेस पर आपका अनुच्छेद वही था जो मैं खोज रहा था। रिमोट से अद्यतन, सबकुछ से शून्य करने के बारे में पूरा विचार पिछले कार्यों के शीर्ष पर अपने परिवर्तनों को दोबारा बदलना यह तब हुआ जब आप काम कर रहे थे। सही स्पष्टीकरण मानते हुए यह सही है। ;) - coblr