2013-03-26 9 views
45

मेरे पास मेरे गिथब खाते पर moodle एक रिपोजिटरी है जो आधिकारिक भंडार से forked है।घातक: 'मूल' एक गिट भंडार प्रतीत नहीं होता है

मैंने इसे अपनी स्थानीय मशीन पर क्लोन किया। यह ठीक काम किया। मैंने कई शाखाएं बनाई हैं (master शाखा के तहत)। मैंने कई काम किए और यह ठीक काम किया।

मैं नहीं जानता कि जब मैं करता हूँ कि कैसे मैं निम्न त्रुटि हो रही है: git push origin master

fatal: 'origin' does not appear to be a git repository 
fatal: The remote end hung up unexpectedly 

मैं कैसे Github पर अपने भंडार प्रभावशाली बिना त्रुटि को हल करते हैं?

मैं Ubuntu 12.10

मेरी .git/config की सामग्री का उपयोग कर रहा cat $(git rev-parse --show-toplevel)/.git/config करने के बाद देता है:

[core] 
    repositoryformatversion = 0 
    filemode = true 
    bare = false 
    logallrefupdates = true 
[branch "master"] 
[branch "MOODLE_23_STABLE"] 
[branch "MOODLE_24_STABLE"] 
[remote "upstream"] 
    url = git://git.moodle.org/moodle.git 
    fetch = +refs/heads/*:refs/remotes/upstream/* 
+0

कृपया .git/config की सामग्री मुद्रित करें और यहां – pmod

+0

@pmod जोड़ें: कृपया मेरा अपडेट किया गया प्रश्न देखें। – xan

+0

स्थानीय मशीन पर क्लोन किए गए फ़ोल्डर में .git फ़ोल्डर होना चाहिए। – pmod

उत्तर

66

$HOME/.gitconfig अपने वैश्विक Git के लिए config है।
config files के three levels हैं।

cat $(git rev-parse --show-toplevel)/.git/config 

(mentionedbereal द्वारा) अपने स्थानीय config, रेपो आप क्लोन की है, स्थानीय है।

आप भी अपने रेपो के भीतर से लिख सकते हैं:

git remote -v 

और अगर वहाँ किसी भी दूरस्थ नाम 'मूल' यह में सूचीबद्ध है देखते हैं।

यदि नहीं, अगर है कि दूरदराज के (जो जब एक रेपो क्लोनिंग डिफ़ॉल्ट रूप से बनाया जाता है) याद आ रही है, तो आप इसे फिर से जोड़ सकते हैं:

git remote add origin url/to/your/fork 

ओपी का उल्लेख है:

git remote -v कर देता है:

upstream git://git.moodle.org/moodle.git (fetch) 
upstream git://git.moodle.org/moodle.git (push) 

तो 'origin' गायब है: का संदर्भ कांटा।
देखें "What is the difference between origin and upstream in github"

enter image description here

+0

कर 'Git दूरस्थ -v' देता है: ' नदी के ऊपर \t Git: //git.moodle.org/moodle.git (लाने) '' नदी के ऊपर \t Git: //git.moodle.org/moodle.git (पुश) ' – xan

+0

@xan 'अपस्ट्रीम" रेपो है जिसे आपने फोर्क किया है। आप मूल गायब हैं, जो कि जिथब पर आपका कांटा है। http://stackoverflow.com/a/15632224/6309 और http://stackoverflow.com देखें/एक/9257901/6309 – VonC

6

मैं एक ही समस्या का सामना करना पड़ा जब मैं GitHub पर मेरी भंडार नाम दिया। मैं पुश करने के लिए जो बिंदु पर मैं त्रुटि

fatal: 'origin' does not appear to be a git repository 
fatal: The remote end hung up unexpectedly 

मैं

git remote set-url origin ssh://[email protected]/username/newRepoName.git 

, URL बदलना पड़ा मिला के बाद यह सब आदेशों काम कर ठीक करना शुरू कर दिया की कोशिश की।आप के बाद

git remote -v 

उपयोग करते हुए मेरे मामले में द्वारा परिवर्तन की जांच सफल बदल यह यूआरएल

[[email protected] Android]$ git remote -v 
origin ssh://[email protected]/aniket91/TicTacToe.git (fetch) 
origin ssh://[email protected]/aniket91/TicTacToe.git (push) 
2

यह आपके प्रश्न का उत्तर न में सही नाम बदली रेपो पता चला सकते हैं, लेकिन मैं एक ऐसी ही त्रुटि संदेश लेकिन कारण का सामना करना पड़ा एक अलग कारण के लिए। सूचना संग्रह के लिए मुझे अपनी पोस्ट बनाने की अनुमति दें।

मेरे पास नेटवर्क ड्राइव पर एक गिट रेपो है। आइए इस नेटवर्क ड्राइव RAID को कॉल करें। मैंने इस रेपो को अपनी स्थानीय मशीन (LOCAL) और मेरे नंबर क्रंचिंग क्लस्टर (CRUNCHER) पर क्लोन किया। सुविधा के लिए मैंने अपनी स्थानीय मशीन पर CRUNCHER पर अपने खाते की उपयोगकर्ता निर्देशिका को आरोहित किया। इसलिए, मैं एक एसएसएच टर्मिनल में काम करने की आवश्यकता के बिना CRUNCHER पर फ़ाइलों का उपयोग कर सकता हूं।

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

कारण यह था कि मैंने स्थानीय पर CRUNCHER पर रेपो के भीतर push कहा था। तो, कॉन्फ़िगरेशन फ़ाइल में सभी पथ सादे गलत थे।

जब मुझे मेरी गलती का एहसास हुआ, तो मैंने टर्मिनल के माध्यम से क्रंचर पर लॉग ऑन किया और प्रतिबद्धता को धक्का देने में सक्षम था।

अगर मेरी व्याख्या को समझा नहीं जा सकता है, या आप मेरी पोस्ट को अधूरा पाते हैं तो टिप्पणी करने के लिए स्वतंत्र महसूस करें।

0

मैं जब .git में FS और नहीं ssh पथ के रूप में दूरस्थ मूल की स्थापना Git पुल मूल BRANCHNAME पर एक ही त्रुटि थी/config:

fatal: '/path/to/repo.git' does not appear to be a git repository 
fatal: The remote end hung up unexpectedly 

यह बहुत की तरह था (यह केवल गिट के समान सर्वर पर उपयोगकर्ताओं के लिए काम करता है जिनके पास गिट तक पहुंच है):

url = file:///path/to/repo.git/ 

इतना है कि यह तय है (यह है कि Git उपयोगकर्ता (ssh authorizes_keys या पासवर्ड) की पहुंच है सभी उपयोगकर्ताओं पर काम करता है):

url = [email protected]:path/to/repo.git 

कारण मैं एक निर्देशिका पथ के रूप में यह था क्योंकि Git फाइलें एक ही सर्वर पर हैं।

3

यह संभव है कि आप जिस दूसरी शाखा को खींचने का प्रयास करें, वह सिंचन से बाहर है; इतना जोड़ने और दूरदराज के हटाने के मेरे लिए करने की कोशिश (यदि आप गुरु से खींचने की कोशिश कर रहे हैं)

git pull origin master 

कि साधारण कॉल उन त्रुटि संदेश हल करने से पहले:

  • घातक: 'गुरु' के लिए प्रकट नहीं होता है एक गिट रिपोजिटरी
  • घातक: रिमोट रिपोजिटरी से नहीं पढ़ा जा सका।
संबंधित मुद्दे