सवाल गिट में काम करने के दौरान src refspec मास्टर किसी से मेल नहीं खाता है


मैंने अपने भंडार को क्लोन किया:

git clone ssh://xxxxx/xx.git 

लेकिन कुछ फ़ाइलों को बदलने के बाद और add तथा commit उन्हें मैं सर्वर पर धक्का देना चाहता हूं:

git add xxx.php
git commit -m "TEST"
git push origin master

लेकिन मुझे वापस आने वाली त्रुटि है:

error: src refspec master does not match any.  
error: failed to push some refs to 'ssh://xxxxx.com/project.git'

1897
2017-11-15 06:09


मूल


@ मार्को यह एक डुप्लिकेट नहीं है। एक स्थानीय शाखा को रिमोट शाखा में धकेलने के बारे में यह एक बहुत ही विशिष्ट मुद्दा है। यह एक रेपो शुरू करने और इसे धक्का देने के बारे में है। वे एक ही त्रुटि उत्पन्न करते हैं, लेकिन कारण वे उस त्रुटि उत्पन्न करते हैं और फिक्स पूरी तरह से अलग होते हैं। इसके अलावा, sinoohe, आपको एक जवाब स्वीकार करना चाहिए। संभवतः पहला, जैसा कि यह सवाल का जवाब देता है और 350 से अधिक लोगों की मदद करता है। - tandrewnichols
क्या आपने अपनी मशीन पर विश्व स्तर पर गिट स्थापित करने और कॉन्फ़िगर करने के लिए अपना गिट कॉन्फ़िगर कमांड सेट अप किया है? - Igor Ganapolsky
उम्मीद है कि यह पोस्ट किसी के लिए उपयोगी होगा- samranga.blogspot.com/2015/07/...  प्रश्न में त्रुटि को पहले से ही स्थानीय रूप से मौजूदा प्रोजेक्ट से गिट बिटबकेट रिपॉजिटरी बनाने की कोशिश करते समय भी पॉप किया जा सकता है - Samitha Chathuranga
मुझे यह त्रुटि गलत शाखा नाम को धक्का देने की कोशिश कर रही है। का उपयोग कर हल किया गया git status उचित पाने के लिए। - Tom Howard
रीडेमे फ़ाइल जोड़ना मेरे लिए काम करता है - lft93ryt


जवाब:


शायद आपको बस प्रतिबद्ध करने की जरूरत है। जब मैंने किया तो मैं इसमें भाग गया:

mkdir repo && cd repo
git remote add origin /path/to/origin.git
git add .

ऊप्स! कभी प्रतिबद्ध नहीं!

git push -u origin master
error: src refspec master does not match any.

मुझे बस इतना करना था:

git commit -m "initial commit"
git push origin master

सफलता!


2973
2017-09-27 16:07



अंधेरे से इस चरण का पालन न करें, देखें कि @ वीआई ने क्या उल्लेख किया है, और उसके बाद रेफ को सही करने के लिए अपने पुश कमांड को संशोधित करें। - Kumar
मुझे एक ही समस्या थी, बस पुश से पहले प्रतिबद्ध करना भूल गया। इस मुद्दे को ठीक किया, धन्यवाद! - Shimon Tolts
इस त्रुटि के लिए सबसे संभावित कारण यह है कि सभी फाइलें अनचाहे हैं और जिन्हें जोड़ा नहीं गया है। git add --all यदि आप सभी फाइलें जोड़ना चाहते हैं या आप चुनिंदा फाइलें जोड़ सकते हैं। फिर git commit -m "Initial comment", git push origin master। यह निश्चित रूप से काम करेगा। - Bhanu Pratap Singh
विभिन्न मुद्दों को ठीक करता है जो अच्छा है लेकिन वास्तव में इसका जवाब नहीं है इस वास्तविक सवाल - Michael Durrant
git commit -m 'initial commit' डबल उद्धृत किया जाना चाहिए। 'git commit -m "initial commit"कम से कम खिड़कियों पर। - Sung Kim


  1. प्रयत्न git show-ref यह देखने के लिए कि आपके पास क्या रेफरी है। है refs/heads/master?

  2. तुम कोशिश कर सकते हो git push origin HEAD:master अधिक स्थानीय संदर्भ-स्वतंत्र समाधान के रूप में।


564
2017-11-15 11:24



मेरी मास्टर शाखा काम करने के शीर्ष पर नहीं थी! इसलिए मैंने एक शाखा बनाई जो सभी शाखाओं के अंत में थी और मैंने उन्हें सर्वर पर धक्का दिया: - sinoohe
गिट चेकआउट -बी testbranch; गिट पुश मूल testbranch: मास्टर - sinoohe
git show-ref मेरी शाखा दिखायी git push origin HEAD:<branch> मेरे लिए काम किया - Glen Solsberry
तुमने मुझे अभी बचाया वी। के लिए धन्यवाद git push origin HEAD:master। लेकिन कुछ ऐसा क्यों है git push --force origin master काम नहीं करता? - shkschneider
@ gms8994 - आप सही हैं। यदि कोई मास्टर में धक्का देने की बजाय पहली चीज़ के रूप में शाखा बनाता है, वही unfriendly त्रुटि दिखाती है। उपयोग git push origin <branch> के बजाय master यदि आप प्रयास करते हैं git checkout -b <branch> प्रारंभिक के बाद किसी भी पहले धक्का से पहले git remote add origin <url> - asyncwait


मेरे स्थानीय कंप्यूटर में सभी फ़ाइलों को हटाने के बाद भी मुझे एक ही त्रुटि हुई और मुझे सभी फाइलों को रिपोजिटरी पर साफ़ करना होगा।

मेरा त्रुटि संदेश ऐसा कुछ था:

error: src refspec master does not match any.
error: failed to push some refs to 'git@github ... .git'

और यह निम्न आदेशों को निष्पादित करके हल किया गया है:

touch README
git add README

git add (all other files)
git commit -m 'reinitialized files'
git push origin master --force  # <- caution, --force can delete others work.

यही है, उम्मीद है कि यह मदद करता है।


187
2018-01-04 17:03



अन्य उत्तरों ने मेरी समस्या को हल नहीं किया था (उदाहरण के लिए, मैंने पहले से ही प्रतिबद्ध किया था और अभी भी यह त्रुटि थी), लेकिन एक कर रहा था git push origin BRANCH --force काम किया। धन्यवाद! - Lemmings19
देख यह पहले जवाब। मुझे संदेह है कि आपको एक फ़ाइल जोड़ने की आवश्यकता है क्योंकि गिट खाली निर्देशिकाओं को ट्रैक नहीं करेगा।
पुश - फोर्स सह-श्रमिकों को कड़ी मेहनत से पूरी तरह से उड़ा सकता है। इसके द्वारा चेतावनी जोड़ा गया। - Michael Durrant
यह मेरी समस्या हल हो गई। मुझे लगता है कि गिट ऐड ने किया था। पहली गिट में चीजों को धक्का देते समय चीजों को पहचान नहीं आता है, यही कारण है कि मुझे समस्या थी। गिट एड कमांड मेरी समस्या हल हो गया। इसके बाद भी मैं बिना बल के धक्का देने में सक्षम था। धन्यवाद आर्यो - Anandaraja_Srinivasan
यह हल हो गया है कि 'रीडमे' के बिना गिट नहीं दबाएगा - Jimmy Obonyo Abor


  1. मेरे परिवर्तन पहले से ही प्रतिबद्ध थे
  2. फोर्स पुश ने अभी भी मुझे एक ही त्रुटि दी है।

तो मैंने कोशिश की वी का समाधान:

git push origin HEAD:<remoteBranch> 

यह मेरे लिए काम किया।


145
2018-05-06 17:27



अंततः मुझे पता चला कि ऐसा इसलिए था क्योंकि मैंने शाखा के नाम की गलत वर्तनी की थी। मैंने सफलतापूर्वक शाखा ए को मूल रूप से बी नामक शाखा के साथ धक्का दिया git push origin HEAD:B, लेकिन जब भी मैं धक्का देता हूं तब भी मुझे हर बार एक ही त्रुटि मिलती है git push origin शाखा ए पर - Yi H.
@YiHuang, धन्यवाद, मैंने पहले अपनी शाखा का नाम चेक किया था, और फिर मैंने आपकी टिप्पणी के कारण इसे दोबारा जांच लिया - एक ही समस्या थी, इसे याद किया। - lakesare
@ YiH.i यकीन था कि मेरी शाखा का नाम सही है, लेकिन मैंने आपकी टिप्पणी पढ़ने के बाद इसे फिर से जांच लिया और मेरा बुरा - एक ही मुद्दा है। - Null Pointer


मेरे लिए मुझे यह सुनिश्चित करना था सार्वजनिक कुंजी सर्वर में ठीक से कॉन्फ़िगर किया गया है (~ / .ssh / अधिकृत_keys में संलग्न) और github / bitbucket में (github या bitbucket पर मेरी एसएसएच कुंजी में जोड़ा गया) - उन्हें मिलान करने की आवश्यकता है।

फिर:

git add --all :/

git commit -am 'message'

git push -u origin master

अंत में मेरे लिए काम किया।


96
2017-09-02 01:56



एक वैध लेकिन अलग मुद्दा। -u यहां मदद की - Michael Durrant
धन्यवाद! यह एकमात्र समाधान था जिसने मेरी मदद की - Matan Dahan
धन्यवाद तुम मुझे बचाओ - core114
इस समाधान ने समस्या हल की। धन्यवाद :) - Sahil Gupta


गुम या छोड़ना git add . या git commit इस त्रुटि का कारण हो सकता है:

git push -u origin master
Username for 'https://github.com': yourusername
Password for 'https://yourusername@github.com': 
error: src refspec master does not match any.
error: failed to push some refs to 'https://github.com/yourusername/foobar.git'

इसे ठीक करने के लिए, उचित अनुक्रम को पुन: प्रारंभ करें और फ़ॉलो करें:

git init
git add .
git commit -m 'message'
git *create remote
git push -u origin master

62
2017-11-03 20:30



गिट: '* बनाएं' एक गिट कमांड नहीं है। 'गिट --help' देखें। - sam
यह सही है, व्यापार अंत अधिक विशेष रूप से है git remote add __REMOTE_NAME__ __URL_OR_SSH__, और रिमोट नाम से ऊपर "मूल" है - aug2uag
उन्होंने अपने प्रश्न में जोड़ा और प्रतिबद्ध किया ताकि यह मुद्दा न हो, भले ही इससे अन्य लोगों की मदद मिलती है। - Michael Durrant
हालांकि इस जवाब ने काम किया था -u विकल्प जो यहां इस्तेमाल किया गया था। - Michael Durrant


मैंने पाया कि यह केवल एक निर्देशिका को जोड़ने के बाद यह एक ब्रांड नई भंडार में हुआ।

जैसे ही मैंने एक फ़ाइल (जैसे एक रीडमे) जोड़ा, गिट पुश ने बहुत अच्छा काम किया।


56
2017-09-25 01:44



यह शायद काम करता है क्योंकि गिट वास्तव में निर्देशिकाओं को ट्रैक नहीं करता है, केवल फाइलें। तो यदि कोई निर्देशिका खाली है, तो गिट वास्तव में इसे जोड़ नहीं पाएगा।
ओपी ने एक फ़ाइल (xx.php) जोड़ दी है, इसलिए इस मामले में यह समस्या नहीं थी, भले ही अन्य मामलों में यह एक समस्या हो और फ़ाइल को हल करने का समाधान हो उस मुसीबत। - Michael Durrant
निराशाजनक समस्या का इतना आसान समाधान। मैं रिपो के निर्माण और क्लोनिंग का परीक्षण कर रहा था और फाइलों को खाली निर्देशिका नहीं बनाया था। - James Wierzba
यह एक ब्रांड नए रेपो के लिए मेरे लिए काम किया है - Anupam


इसे ठीक करने के लिए, उचित कोड अनुक्रम पुन: प्रारंभ करें और उसका पालन करें:

git init
git add .
git commit -m 'message'
git push -u origin master

56
2018-01-12 17:30



-u विकल्प ने यह काम किया। - Michael Durrant
धन्यवाद प्रतीक। :) - Vikas Gupta