सवाल मैं गिटहब फोर्कड रिपोजिटरी कैसे अपडेट करूं?


मैंने हाल ही में एक परियोजना को फोर्क किया और कई फिक्स लागू किए। तब मैंने एक पुल अनुरोध बनाया जिसे बाद में स्वीकार किया गया।

कुछ दिनों बाद एक और योगदानकर्ता ने एक और योगदान दिया। तो मेरे कांटा में वह परिवर्तन नहीं है।

मैं अपने कांटा में उस परिवर्तन को कैसे प्राप्त कर सकता हूं? क्या मुझे योगदान देने के लिए और बदलाव होने पर मुझे अपने कांटा को हटाने और फिर से बनाने की ज़रूरत है? या कोई अद्यतन बटन है?


2834
2017-08-30 13:53


मूल


यह जीथ्यूब यूआई से भी किया जा सकता है। मैं क्रेडिट [इस अन्य पोस्टर को] देना चाहता हूं [1]। [1]: stackoverflow.com/a/21131381/728141 - Mike Schroll
इस पर एक और अच्छा ब्लॉग पोस्ट - एक गिटहब कांटा अद्यतन रखना - Arup Rakshit
गिथब में यह लेख मदद मिली लेख: help.github.com/articles/syncing-a-fork - Pranav
क्या यह एक डुप्लिकेट है stackoverflow.com/questions/3903817/... ? - David Cary
यहां एक वीडियो डेमो है जो दो गीथब खातों का उपयोग करता है youtube.com/watch?v=kpE0gTX4ycE - lifebalance


जवाब:


अपने फोर्कड रिपॉजिटरी के अपने स्थानीय क्लोन में, आप मूल गिटहब रिपॉजिटरी को "रिमोट" के रूप में जोड़ सकते हैं। ("रिमोट्स" रिपॉजिटरीज के यूआरएल के लिए उपनामों की तरह हैं - origin उदाहरण के लिए एक है।) फिर आप उस अपस्ट्रीम रिपोजिटरी से सभी शाखाएं ला सकते हैं, और अपस्ट्रीम संस्करण पर काम करना जारी रखने के लिए अपने काम को दोबारा कर सकते हैं। आदेशों के संदर्भ में जो दिख सकते हैं:

# Add the remote, call it "upstream":

git remote add upstream https://github.com/whoever/whatever.git

# Fetch all the branches of that remote into remote-tracking branches,
# such as upstream/master:

git fetch upstream

# Make sure that you're on your master branch:

git checkout master

# Rewrite your master branch so that any commits of yours that
# aren't already in upstream/master are replayed on top of that
# other branch:

git rebase upstream/master

यदि आप अपनी मास्टर शाखा के इतिहास को फिर से लिखना नहीं चाहते हैं, (उदाहरण के लिए क्योंकि अन्य लोगों ने इसे क्लोन कर दिया हो) तो आपको अंतिम कमांड को प्रतिस्थापित करना चाहिए git merge upstream/master। हालांकि, आगे खींचने के अनुरोधों को जितना संभव हो उतना साफ करने के लिए, संभवतया रीबेज करना बेहतर है।


अगर आपने अपनी शाखा को फिर से दबा दिया है upstream/master आपको गिटहब पर अपने स्वयं के फोर्कड रिपॉजिटरी में धक्का देने के लिए पुश को मजबूर करने की आवश्यकता हो सकती है। आप इसके साथ ऐसा करेंगे:

git push -f origin master

आपको केवल इसका उपयोग करने की आवश्यकता है -f आपके द्वारा पुन: विश्राम करने के बाद पहली बार।


3103
2017-08-30 14:01



चूंकि आपका कांटा केवल जिथब पर मौजूद है, और जीथब में वेब इंटरफ़ेस के माध्यम से विलय करने के लिए टूल नहीं हैं, तो सही उत्तर अपस्ट्रीम को स्थानीय रूप से विलय करना है और परिवर्तन को अपने कांटा में वापस धक्का देना है। - Tim Keating
यहां एक महान ट्यूटोरियल है जो मैंने गितूब के साथ काम करने पर पाया: gun.io/blog/how-to-github-fork-branch-and-pull-request - Tim Keating
एक त्वरित नोट कि यह सुनिश्चित करने के लिए कि आप स्वच्छ राज्य से शुरुआत कर रहे हैं, अपनी खुद की मास्टर शाखा को पुनर्जीवित करने के बजाय, आपको शायद एक अलग शाखा पर काम करना चाहिए और उस से पुल अनुरोध करना चाहिए। यह आपके मास्टर को किसी भी भावी विलय के लिए साफ रखता है और यह आपको इतिहास को फिर से लिखने से रोकता है -f जो हर किसी को गड़बड़ कर देता है जो आपके संस्करण को क्लोन कर सकता था। - Mateusz Kowalczyk
रिबेस कमांड के बजाय, मैंने निम्न का उपयोग किया: git merge --no-ff upstream/master इस तरह आपकी प्रतिबद्धता अब शीर्ष पर नहीं है। - Steckdoserich
एक और गिट विफलता। यदि यह टूल वितरित सहयोग का समर्थन करना है, तो बुनियादी वर्कफ़्लो निष्पादित करना इतना मुश्किल क्यों है? 4 मिलियन लोग और 2200 अपवॉट्स का मतलब है कि उपकरण असफल रहा। "आप मूल गिटहब भंडार को" रिमोट "के रूप में जोड़ सकते हैं - किसी को भी ऐसा क्यों करना है? कांटा के दौरान ऐसा क्यों नहीं किया जाता है? इस उपकरण के बारे में इतना टूटा क्या है? - jww


मई 2014 से शुरू, गिटहब से सीधे एक कांटा अद्यतन करना संभव है। यह अभी भी सितंबर 2017 के रूप में काम करता है, परंतु यह एक गंदे प्रतिबद्ध इतिहास का कारण बन जाएगा।

  1. गिटहब पर अपना कांटा खोलें।
  2. पर क्लिक करें पुल अनुरोध
  3. पर क्लिक करें नया पुल अनुरोध। डिफ़ॉल्ट रूप से, गिटहब मूल की तुलना आपके फोर्क से करेगा, और यदि आपने कोई बदलाव नहीं किया है तो तुलना करने के लिए कुछ भी नहीं होना चाहिए।
  4. क्लिक करें आधार स्विचिंग अगर आप उस लिंक को देखते हैं। अन्यथा, मैन्युअल रूप से सेट करें आधार कांटा अपने कांटा के लिए नीचे ड्रॉप, और सिर कांटा अपस्ट्रीम के लिए। अब गिटहब मूल के साथ आपके कांटे की तुलना करेगा, और आपको सभी नवीनतम परिवर्तन देखना चाहिए। enter image description here
  5. पुल अनुरोध बनाएँ और अपने पुल अनुरोध पर एक अनुमानित नाम असाइन करें (उदा। Update from original)।
  6. नीचे स्क्रॉल करें पुल अनुरोध मर्ज करें, लेकिन अभी तक कुछ भी क्लिक न करें।

अब आपके पास तीन विकल्प हैं, लेकिन प्रत्येक एक कम से कम स्वच्छ प्रतिबद्ध इतिहास का नेतृत्व करेगा।

  1. डिफ़ॉल्ट एक बदसूरत विलय प्रतिबद्धता पैदा करेगा।
  2. यदि आप ड्रॉपडाउन पर क्लिक करते हैं और "स्क्वाश और विलय" चुनते हैं, तो सभी हस्तक्षेप करने वाली गतिविधियों को एक में squashed किया जाएगा। यह अक्सर ऐसा कुछ होता है जिसे आप नहीं चाहते हैं।
  3. यदि आप क्लिक करते हैं रीबेस और मर्ज करें, सभी काम आपको "के साथ" बनाए जाएंगे, मूल पीआर आपके पीआर से लिंक होगा, और गिटहब प्रदर्शित होगा This branch is X commits ahead, Y commits behind <original fork>

तो हां, आप अपने रेपो को गिटहब वेब यूआई का उपयोग करके अपने अपस्ट्रीम के साथ अपडेट कर सकते हैं, लेकिन ऐसा करने से आपका प्रतिबद्धता इतिहास खराब हो जाएगा। के लिए छड़ी कमांड लाइन इसके बजाए - यह आसान है।


642
2018-05-25 07:31



यह एक बार महान काम किया। दूसरी बार इस प्रक्रिया ने एक ही तरीके से काम नहीं किया: "आधार स्विचिंग" लिंक दिखाई नहीं दिया। और जब मैंने "पुल अनुरोध बनाने के लिए क्लिक करें" दबाया तो उसने SOURCE repo पर एक पीआर बनाया। मैं क्या चाहता था नहीं .. - javadba
अभी भी काम करता है (मार्च 2015), हालांकि "आधार स्विचिंग" लिंक अब और नहीं है। आपको "बेस" ड्रॉप डाउन को बदलना होगा ताकि आपके फोर्क पर दोनों बिंदु हो और फिर आपको "रेपो में तुलना करें" के लिए एक संकेत मिलेगा, जो आपको जहां चाहें ले जाएगा। - mluisbrown
अप्रैल 2015. काम करता है। धन्यवाद। मुझे "आधार पर स्विचिंग" मिली। हालांकि, चरण 6 "पुल अनुरोध बनाएं" था -> टिप्पणी दर्ज करें -> "पुल अनुरोध बनाएं"। मूल से आगे 1 प्रतिबद्ध के साथ समाप्त करें। - cartland
@ कार्टलैंड (या अन्य) - हाँ, यह कहता है "यह शाखा 1 आगे है ..." क्या यह चिंता करने के लिए कुछ है? क्या उस संदेश से छुटकारा पाना संभव है? - RenniePet
यह एक बेहतर अद्यतन या सिंक बटन के साथ बेहतर नहीं होगा! - transformer


यहां गितहब का आधिकारिक दस्तावेज है एक कांटा सिंकिंग:

एक कांटा सिंकिंग

स्थापित करना

सिंक करने से पहले, आपको एक रिमोट जोड़ना होगा जो अपस्ट्रीम रिपोजिटरी को इंगित करता है। जब आपने मूल रूप से फोर्क किया था तो आपने ऐसा किया होगा।

युक्ति: अपने कांटा को सिंक करना केवल भंडार की आपकी स्थानीय प्रति अपडेट करता है; यह गिटहब पर आपके भंडार को अपडेट नहीं करता है।

$ git remote -v
# List the current remotes
origin  https://github.com/user/repo.git (fetch)
origin  https://github.com/user/repo.git (push)

$ git remote add upstream https://github.com/otheruser/repo.git
# Set a new remote

$ git remote -v
# Verify new remote
origin    https://github.com/user/repo.git (fetch)
origin    https://github.com/user/repo.git (push)
upstream  https://github.com/otheruser/repo.git (fetch)
upstream  https://github.com/otheruser/repo.git (push)

सिंक कर रहा है

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

ला रहा है

रिमोट रिपोजिटरी से प्राप्त करने से इसकी शाखाएं और उनके संबंधित काम आएंगे। ये विशेष शाखाओं के तहत आपके स्थानीय भंडार में संग्रहीत हैं।

$ git fetch upstream
# Grab the upstream remote's branches
remote: Counting objects: 75, done.
remote: Compressing objects: 100% (53/53), done.
remote: Total 62 (delta 27), reused 44 (delta 9)
Unpacking objects: 100% (62/62), done.
From https://github.com/otheruser/repo
 * [new branch]      master     -> upstream/master

अब हमारे पास अपस्ट्रीम की मास्टर शाखा स्थानीय शाखा, अपस्ट्रीम / मास्टर में संग्रहीत है

$ git branch -va
# List all local and remote-tracking branches
* master                  a422352 My local commit
  remotes/origin/HEAD     -> origin/master
  remotes/origin/master   a422352 My local commit
  remotes/upstream/master 5fdff0f Some upstream commit

विलय

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

$ git checkout master
# Check out our local master branch
Switched to branch 'master'

$ git merge upstream/master
# Merge upstream's master into our own
Updating a422352..5fdff0f
Fast-forward
 README                    |    9 -------
 README.md                 |    7 ++++++
 2 files changed, 7 insertions(+), 9 deletions(-)
 delete mode 100644 README
 create mode 100644 README.md

यदि आपकी स्थानीय शाखा में कोई अनोखा काम नहीं था, तो गिट इसके बजाय "फास्ट-फॉरवर्ड" करेगा:

$ git merge upstream/master
Updating 34e91da..16c56ad
Fast-forward
 README.md                 |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

युक्ति: यदि आप गिटहब पर अपना भंडार अपडेट करना चाहते हैं, तो निर्देशों का पालन करें यहाँ


365
2017-10-21 23:04



यह मेरे स्थानीय कांटा को अद्यतन करता है, लेकिन Github.com पर मेरा कांटा अभी भी कहता है "43 पीछे आता है"। मुझे अपने Github.com कांटा में मास्टर परिवर्तनों को मर्ज करने के लिए एक पुल अनुरोध बनाने के लिए लॉबज़िक की तकनीक का उपयोग करना पड़ा। - Michael McGinnis
@MichaelMcGinnis स्थानीय रूप से विलय करने के बाद, आपको अपने परिवर्तन github में धक्का देना होगा। git push origin master - jumpnett
धक्का देने के लिए स्मार्ट हो सकता है --follow-tags: stackoverflow.com/a/26438076/667847 - kenny
मुझे इसे सभी शाखाओं के लिए अलग से करना है git merge upstream/master, फिर शाखा विकसित करने और करने के लिए जांचें git merge upstream/develop - Shobi P P
stackoverflow.com/a/14074925/470749 मेरे लिए सहायक था क्योंकि मैं मिल रहा था Permission denied (publickey). fatal: Could not read from remote repository. फेसबुक के गितब खाता अपस्ट्रीम से लाने की कोशिश करते समय। - Ryan


बहुत सारे जवाब आपके कांटा को ऊपर ले जाते हैं एक आगे प्रतिबद्ध है अभिभावक भंडार का। यह उत्तर पाया गया चरणों का सारांश देता है यहाँ जो होगा अपने कांटा को माता-पिता के समान प्रतिबद्धता में ले जाएं

  1. निर्देशिका को अपने स्थानीय भंडार में बदलें।

    • यदि आप नहीं हैं तो मास्टर शाखा में स्विच करें git checkout master
  2. माता-पिता को रिमोट रिपोजिटरी के रूप में जोड़ें, git remote add upstream <repo-location>

  3. मुद्दा git fetch upstream
  4. मुद्दा git rebase upstream/master

    • इस चरण में आप यह जांचते हैं कि टाइपिंग द्वारा विलय किया जाएगा git status
  5. मुद्दा git push origin master

इन आदेशों के बारे में अधिक जानकारी के लिए, देखें चरण 3


81
2017-08-05 14:59



@ एमटी: हालांकि, आप इन आदेशों को कहां दर्ज करते हैं? प्रश्न के बारे में, जैसा कि मैं समझता हूं, यह है कि कैसे अपने व्यक्तिगत को पुन: सिंक्रनाइज़ करना है GitHub मुख्य परियोजना के साथ कांटा, और गिटहब से यह सब करो। दूसरे शब्दों में, आप अपने रिमोट कांटा को कैसे अपडेट कर सकते हैं के बग़ैर एक स्थानीय भंडार? - John Y
@ जॉनी गिटहब का उपयोग हमेशा एक अतिरिक्त प्रतिबद्धता बनाएगा। उस अतिरिक्त प्रतिबद्धता से बचने के लिए आपको स्थानीय रिपो पर एक खोल में यह सब करने की ज़रूरत है। - Jonathan Cross


नवंबर 2013 के बाद से गिटहब के साथ एक अनौपचारिक सुविधा अनुरोध खुला है, ताकि उन्हें स्थानीय फर्क को अपस्ट्रीम के साथ सिंक में रखने के लिए एक बहुत ही सरल और सहज तरीका जोड़ने के लिए कहा जा सके:

https://github.com/isaacs/github/issues/121

नोट: चूंकि सुविधा अनुरोध अनौपचारिक है, इसलिए संपर्क करने के लिए भी सलाह दी जाती है support@github.com इस तरह की सुविधा के लिए अपना समर्थन जोड़ने के लिए। उपरोक्त अनौपचारिक सुविधा अनुरोध को लागू किए जा रहे ब्याज की राशि के साक्ष्य के रूप में उपयोग किया जा सकता है।


39
2018-02-21 10:42





प्रस्तावना: आपका कांटा "मूल" है और आपके द्वारा फोर्क किया गया भंडार "अपस्ट्रीम" है।

आइए मान लीजिए कि आपने अपने कंप्यूटर पर पहले से ही अपने फोर्क को इस तरह के कमांड के साथ क्लोन किया है:

git clone git@github.com:your_name/project_name.git
cd project_name

यदि यह दिया जाता है तो आपको इस क्रम में जारी रखने की आवश्यकता है:

  1. अपने क्लोन रिपोजिटरी ("मूल") में "अपस्ट्रीम" जोड़ें:

    git remote add upstream git@github.com:original_author/project_name.git
    
  2. "अपस्ट्रीम" से काम (और शाखाएं) प्राप्त करें:

    git fetch upstream
    
  3. अपने कांटा ("मूल") की "मास्टर" शाखा पर स्विच करें:

    git checkout master
    
  4. अपनी "मास्टर" शाखा के परिवर्तनों को रोकें:

    git stash
    
  5. अपने "मूल" की "मास्टर" शाखा में "अपस्ट्रीम" की "मास्टर" शाखा से परिवर्तनों को मर्ज करें:

    git merge upstream/master
    
  6. यदि कोई हो तो विलय विवादों को हल करें और अपना विलय करें

    git commit -am "Merged from upstream"
    
  7. अपने कांटा में परिवर्तन पुश करें

    git push
    
  8. अपने चुने हुए परिवर्तन वापस प्राप्त करें (यदि कोई हो)

    git stash pop
    
  9. हो गया! बधाई हो!

गिटहब भी इस विषय के लिए निर्देश प्रदान करता है: एक कांटा सिंकिंग


29
2018-03-16 12:24



आंशिक रूप से मदद की: है git remote add upstream git@github.com:original_author/project_name.git बस के लिए एक उपनाम git remote add upstream https://github.com/original_author/project_name.git ? - Wolf
भेड़िया, अनुमान लगाते हुए आप इसे अब तक जानते हैं, लेकिन वंशावली के लिए ... यह एसएसएच के लिए प्रारूप है। help.github.com/articles/configuring-a-remote-for-a-fork - Brad Ellis


अगर, मेरे जैसे, आप मास्टर को सीधे कुछ भी प्रतिबद्ध न करें, जो आपको वास्तव में करना चाहिए, आप निम्न कार्य कर सकते हैं।

अपने कांटे के स्थानीय क्लोन से, अपना अपस्ट्रीम रिमोट बनाएं। आपको केवल एक बार ऐसा करने की ज़रूरत है:

git remote add upstream https://github.com/whoever/whatever.git

फिर जब भी आप अपस्ट्रीम रिपोजिटरी मास्टर शाखा के साथ पकड़ना चाहते हैं तो आपको यह करना होगा:

git checkout master
git pull upstream master

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

तो शुरुआती अपस्ट्रीम सेटअप और मास्टर चेकआउट से पहले, आपको बस इतना करना है कि अपस्ट्रीम के साथ अपने मास्टर को सिंक करने के लिए निम्न आदेश चलाएं: गिट अप अपस्ट्रीम मास्टर खींचें


22
2018-01-03 16:59





इस उत्तर की तारीख के अनुसार, गिटहब ने नहीं किया है (या मैं अब नहीं कहूंगा?) वेब इंटरफ़ेस में यह सुविधा। हालांकि, आप पूछ सकते हैं support@github.com इसके लिए अपना वोट जोड़ने के लिए।

इस बीच, गिटहब उपयोगकर्ता बार्डिबरबोरो ने ऐसा करने के लिए एक टूल बनाया है: https://upriver.github.io/

स्रोत यहां है: https://github.com/upriver/upriver.github.io


21
2017-09-14 14:22



जबकि मुझे उपकरण अच्छा लगता है कि वास्तविकता यह है कि ब्रोकन है। यह मेरे खाते से केवल 20 रिपो लोड करता है और यहां तक ​​कि पाद लेख ऐसी वेबसाइट पर रीडायरेक्ट करता है जो मौजूद नहीं है। यदि यह तय है तो मैं एक बड़ा वकील बनूंगा। - sorin
आज तक, मैंने अपस्ट्रीम रेपो के साथ एक कांटा सिंक करने के लिए सफलतापूर्वक अपरिवर्तित उपयोग किया है, इसलिए यह मेरे उद्देश्यों के लिए काम कर रहा है और मैं इसका उपयोग जारी रखूंगा। - NauticalMile
@sorin ये 20 रेपो / शाखा सीमा (बल्कि, यह अब 30 है) गिटहब डिफ़ॉल्ट पेजिंग सेटिंग्स से आता है। इसे संभालने के लिए कोड में कुछ अनुकूलन होने की आवश्यकता है। - Andreas


यदि आप विंडोज के लिए गिटहब का उपयोग कर रहे हैं तो अब फोर्क अपडेट करने के लिए उनके पास एक-क्लिक सुविधा है:

  1. यूआई में भंडार का चयन करें।
  2. शीर्ष पर "उपयोगकर्ता / शाखा से अपडेट करें" बटन पर क्लिक करें।

12
2018-03-31 21:45



यह मैक के लिए भी गितब में काम करता है। - Steve Moser


नीचे दिए गए चरणों का पालन करें। मैंने उनकी कोशिश की और इससे मेरी मदद की।

अपनी शाखा में चेकआउट करें

वाक्य - विन्यास: गिट शाखा आपके विकास विभाग
उदाहरण: गिट चेकआउट मास्टर

नवीनतम कोड प्राप्त करने के लिए स्रोत भंडार शाखा खींचें

वाक्य - विन्यास: गिट खींचो https://github.com/tastejs/awesome-app-ideas स्वामी
उदाहरण: गिट खींचो https://github.com/ORIGINAL_OWNER/ORIGINAL_REPO.git शाखा का नाम


8
2018-01-15 12:31



यदि आप गिटहब का उपयोग कर रहे हैं, तो आप अपने गिटहब शाखा में अपने परिवर्तनों को भी धक्का देना चाहेंगे। git push HttpsForYourForkOfTheRepo BRANCH_NAME - user3731622
यह भी खूब रही। सरल और साफ समाधान। - JakeGould


असल में, ब्राउज़र में अपस्ट्रीम की किसी भी प्रतिबद्धता से अपने कांटा में एक शाखा बनाना संभव है:

  • खुला https://github.com/<repo>/commits/<hash>, कहा पे रेपो तुम्हारा कांटा है, और हैश प्रतिबद्धता का पूरा हैश जो आप अपस्ट्रीम वेब इंटरफ़ेस में पा सकते हैं। उदाहरण के लिए, मैं खोल सकता हूँ https://github.com/max630/linux/commits/0aa0313f9d576affd7747cc3f179feb097d28990, जो इंगित करता है linux  master लेखन के समय के रूप में।
  • "वृक्ष: ...." बटन पर क्लिक करें।
  • नई शाखा का नाम टाइप करें और दबाएं दर्ज

Enter image description here

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

यह कैसे काम करता है (यह अनुमान है, मुझे नहीं पता कि गिटहब वास्तव में यह कैसे करता है): फोर्क ऑब्जेक्ट स्टोरेज और उपयोग साझा करते हैं नामस्थान उपयोगकर्ताओं के संदर्भ को अलग करने के लिए। तो आप अपने कांटा के माध्यम से सभी कामों तक पहुंच सकते हैं, भले ही वे फोर्किंग के समय मौजूद न हों।


8
2018-01-18 06:41



यह भी खूब रही! यह उन लोगों के पूरी तरह से व्यर्थ अपलोड से बचाता है जो गिथब के लिए प्रतिबद्ध हैं। - Rotsor