सवाल गिट पुश: "घातक 'मूल' एक गिट भंडार प्रतीत नहीं होता है - घातक रिमोट रिपोजिटरी से नहीं पढ़ा जा सका।"


मुझे पता है कि समान प्रश्न पूछे जा चुके हैं।

लेकिन, मेरा मानना ​​है कि मेरी समस्या एक गलती के कारण है जिसे मैंने पहले बनाया था और इसलिए अलग है: मुझे समझाएं।

सब कुछ सुचारू रूप से काम कर रहा था, जैसा कि मैं कर सकता था:

  • git add . मेरे स्थानीय भंडार से सभी फाइलें।
  • git commit -m "message here" मेरे कामों में संदेश जोड़ने के लिए।
  • git push origin master गिटहब में अपनी फाइलें अपलोड करने के लिए।
  • git push heroku master मेरी फाइलें Heroku में अपलोड करने के लिए।

हालांकि, किसी बिंदु पर, मैंने स्थानीय रूप से बुलाया एक नई शाखा बनाई add-calendar-model यदि ऐप विकास के अगले चरण दक्षिण में जाएंगे ...

... जो वास्तव में हुआ था।

हालांकि, कई प्रयासों के बावजूद, मैंने प्रारंभिक कोड प्राप्त करने का प्रबंधन नहीं किया - यानी मैंने नई शाखा बनाने से पहले कोड - से master मेरी स्थानीय भंडार में शाखा।

इसलिए, मैंने अपने स्थानीय भंडार से सभी फ़ाइलों को मैन्युअल रूप से हटाने का निर्णय लिया और git clone मेरे master गिटहब से शाखा।

इस तरह, मुझे अपनी सभी फाइलें वापस मिल गईं, लेकिन अब, मैं रिमोट रिपोजिटरी में और भी धक्का नहीं दे सकता।

जब भी मैं दौड़ने की कोशिश करता हूं git push origin add-calendar-model या git push origin master, मुझे निम्नलिखित त्रुटि मिलती है:

fatal: 'origin' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

मैं गिट और गिटहब के साथ बहुत सहज नहीं हूं, जैसा कि आपने अभी अनुमान लगाया है, और मुझे यह मानना ​​है कि मुझे इसे ठीक करने के बारे में कोई जानकारी नहीं है।

कोई उपाय?


44
2017-08-27 00:03


मूल




जवाब:


सबसे पहले, इसे जांचें मूल चलकर सेट है

git remote -v

यह आपको परियोजना के लिए सभी पुश / फ़ेच रिमोट दिखाएगा।

यदि यह आउटपुट के साथ आता है, तो अंतिम कोड ब्लॉक पर जाएं।

दूरस्थ नाम / पता सत्यापित करें

यदि यह दिखाता है कि आपके पास रिमोट सेट हैं, तो जांचें कि रिमोट का नाम आपके आदेशों में रिमोट से मेल खाता है।

$git remote -v
myOrigin ssh://git@example.com:1234/myRepo.git (fetch)
myOrigin ssh://git@example.com:1234/myRepo.git (push)

# this will fail because `origin` is not set
$git push origin master

# you need to use
$git push myOrigin master

यदि आप रिमोट का नाम बदलना चाहते हैं या रिमोट के यूआरएल को बदलना चाहते हैं, तो आप पहले पुराने रिमोट को हटाना चाहते हैं, और फिर सही जोड़ें।

पुराने रिमोट को हटा दें

$git remote remove myOrigin

लापता रिमोट जोड़ें

फिर आप उचित रिमोट का उपयोग कर जोड़ सकते हैं

$git remote add origin ssh://git@example.com:1234/myRepo.git

# this will now work as expected
$git push origin master

112
2017-08-27 00:06



बहुत बहुत धन्यवाद, यह चाल है। - Thibaud Clement
मदद करने में खुशी हुई, खुश कोडिंग। - Matt Clark
धन्यवाद। जैसे ही मुझे अनुमति है, आपके उत्तर को स्वीकार करेंगे। - Thibaud Clement
एसएसएच ने बिटबकेट में मेरे लिए काम नहीं किया, लेकिन https ने किया। - Dimuth Ruwantha
यह मेरे बिना काम किया ssh:// सामने git@example.com:1234/myRepo.git - Carol-Theodor Pelu


जैसा कि मैट क्लार्क ने ऊपर बताया था

हालांकि, मूल सेट नहीं किया जा सकता है, इसलिए हटाने के चरण को छोड़ दें और बस इसे जोड़ने का प्रयास कर इसे साफ़ कर सकते हैं।

git remote add origin <"clone">

जहां "क्लोन" बस आपके गिटहब रेपो में जा रहा है और "एचटीटीपीएस क्लोन यूआरएल" की प्रतिलिपि बना रहा है और गिटबैश में पेस्ट कर रहा है


6
2017-09-21 16:38





सुनिश्चित करें कि .git पर कॉन्फ़िगरेशन फ़ाइल सही है ... URL जांचें और सुनिश्चित करें कि आप अपनी कुंजी के लिए सही प्रोटोकॉल का उपयोग कर रहे हैं ... ProjectWorkspace / .git / config

  ~Wrong url for git@bitbucket
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    url = gitbucket.org:Prezyack/project-one-hello.git
    fetch = +refs/heads/*:refs/remotes/origin/*

 ~Wrong URL for SSH...
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = true
[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = https://emmap1@bitbucket.org/emmap1/bitbucketspacestation.git
[branch "master"]
    remote = origin
    merge = refs/heads/master

हम यूआरएल देख रहे हैं ...  उदाहरण: बिटबकेट के लिए, git@bitbucket.org की अपेक्षा करें .... यदि यह gitbucket.org है। आवश्यक परिवर्तन करें .. बचाना फिर से धक्का देने का प्रयास करें।


1
2017-07-29 12:32





मूल से परिवर्तन खींचते समय एक समान त्रुटि दिखाई देती है। यदि आप मेनू विकल्पों से इंटेलिज में कोशिश कर रहे हैं, तो पुल सीधे काम नहीं कर सकता है।

टर्मिनल पर जाएं और इस कमांड को टाइप करें और इसे काम करना चाहिए: गिट पुल मूल मास्टर


0
2018-06-13 07:50