git पुश कहता है कि "मेरे पास अप-टू-डेट" भले ही मेरे पास स्थानीय परिवर्तन हैं


238

मेरे पास एक रिमोट गिटोसिस सर्वर और एक स्थानीय गिट रिपॉजिटरी है, और हर बार जब मैं अपने कोड में एक बड़ा बदलाव करता हूं, तो मैं उस सर्वर में भी बदलाव लाऊंगा।

लेकिन आज मुझे लगता है कि भले ही मेरे पास कुछ स्थानीय परिवर्तन हों और स्थानीय भंडार के लिए प्रतिबद्ध हों, जब git push origin masterइसे चलाने वाला 'सब कुछ अप-टू-डेट' कहता है, लेकिन जब मैं git cloneदूरस्थ सर्वर पर फ़ाइलों की जांच करने के लिए उपयोग करता हूं , तो इसमें नवीनतम परिवर्तन नहीं होते हैं । और मेरे पास केवल एक शाखा है जिसका नाम "मास्टर" है और एक दूरस्थ सर्वर "मूल" है।

पुनश्च: यह वही है जो दौड़ते समय प्रदर्शित करता है ls-remote, मुझे यकीन नहीं है कि यह मदद करता है या नहीं

$ git ls-remote origin
df80d0c64b8e2c160d3d9b106b30aee9540b6ece        HEAD
df80d0c64b8e2c160d3d9b106b30aee9540b6ece        refs/heads/master
$ git ls-remote .
49c2cb46b9e798247898afdb079e76e40c9f77ea        HEAD
df80d0c64b8e2c160d3d9b106b30aee9540b6ece        refs/heads/master
df80d0c64b8e2c160d3d9b106b30aee9540b6ece        refs/remotes/origin/master
3a04c3ea9b81252b0626b760f0a7766b81652c0c        refs/tags/stage3


वर्थ डबल-चेकिंग आप सही निर्देशिका में हैं! Esp। जब आपके पास
सबमॉड्यूल्स

मेरे मामले में मुझे त्रुटि हो रही थी जबकि commitमैंने नोटिस नहीं किया और कोड को आगे बढ़ाने की कोशिश की
ज़ोहब अली

3
भूल जाना है?
ldgorman

जवाबों:


256

क्या आप किसी भी तरह से एक अलग सिर के साथ काम कर रहे हैं ?

जैसे की:

अलग सिर

यह दर्शाता है कि आपकी नवीनतम प्रतिबद्धता शाखा प्रमुख नहीं है।

चेतावनी : निम्न कार्य करता है git reset --hard: git stashयदि आप अपनी वर्तमान में संशोधित फ़ाइलों को सहेजना चाहते हैं तो पहले उपयोग करना सुनिश्चित करें।

$ git log -1
# note the SHA-1 of latest commit
$ git checkout master
# reset your branch head to your previously detached commit
$ git reset --hard <commit-id>

जैसा कि git checkoutमैन पेज में उल्लेख किया गया है (जोर मेरा):

यह कभी-कभी एक कमिट की जांच करने में सक्षम होने के लिए उपयोगी होता है जो आपकी एक शाखा की नोक पर नहीं होता है
सबसे स्पष्ट उदाहरण इस तरह से टैग किए गए आधिकारिक रिलीज बिंदु पर कमिट की जांच करना है:

$ git checkout v2.6.18

Git के पुराने संस्करण इसकी अनुमति नहीं था और का उपयोग कर एक अस्थायी शाखा बनाने के लिए कहा -bविकल्प है, लेकिन संस्करण 1.5.0 से शुरू, उपरोक्त आदेश अपने detaches HEADवर्तमान शाखा से अंक टैग द्वारा नामित प्रतिबद्ध पर और सीधे ( v2.6.18में ऊपर उदाहरण)।

आप इस अवस्था में रहते हुए सभी git कमांड का उपयोग कर सकते हैं।
आप git reset --hard $othercommitउदाहरण के लिए, आगे बढ़ने के लिए उपयोग कर सकते हैं ।
आप परिवर्तन कर सकते हैं और अलग किए गए HEAD के शीर्ष पर एक नई प्रतिबद्धता बना सकते हैं
तुम भी उपयोग करके एक मर्ज बना सकते हैं git merge $othercommit

जिस अवस्था में आप अपने HEAD को अलग कर रहे हैं, वह किसी भी शाखा द्वारा दर्ज नहीं है (जो कि स्वाभाविक है - आप किसी भी शाखा में नहीं हैं)।
इसका मतलब है कि है यदि आप एक मौजूदा शाखा करने के लिए वापस स्विच किए बिना अपनी अस्थायी करता और मर्ज के त्यागने कर सकते हैं (उदाहरण के लिए git checkout master), और बाद में एक git pruneया git gcउन्हें कचरा-एकत्र करते हैं।
यदि आपने गलती से ऐसा किया है, तो आप HEAD के लिए reflog पूछ सकते हैं कि आप कहां थे, उदा

$ git log -g -2 HEAD

4
यह मेरे लिए पूरी तरह से स्पष्ट नहीं है कि मैं इस स्थिति में कैसे आया (फिलहाल git-svn के साथ कुछ छेड़छाड़ कर रहा हूं), लेकिन यह मुझे सही जगह पर वापस लाने के लिए पर्याप्त था। धन्यवाद।
क्रिस्टोफर श्मिट

मैं एक अलग सिर की स्थिति में हूं, मेरे बदलावों को मर्ज कर दिया है, मेरे बदलावों को प्रतिबद्ध कर दिया है और अब मैं इसे मास्टर तक पहुंचाना चाहता हूं और मुझे "सब कुछ अप टू डेट" बता सकता है। लेकिन मैं अपने Gitlab प्रदान किए गए निर्देशों का पालन कर Step 1: git fetch origin git checkout -b "nodeAPI" "origin/nodeAPI" Step 2. Review the changes locally Step 3. Merge and fix conflicts git fetch origin git checkout "origin/master" git merge --no-ff "nodeAPI" Step 4. Push the result of the merge to GitLab git push origin "master" रहा हूं : मैं अंतिम चरण तक अच्छा हूं। लेकिन अब मैं असमंजस में हूं कि कैसे आगे बढ़ा जाए।
जॉन

@ जॉन आपको पुश करने के लिए एक शाखा में होना चाहिए। जब तक आप एक अलग हेड मोड में हैं, तब तक काम नहीं करेगा। अपनी शाखा को उस स्थान पर रीसेट करें जहां आप हैं: git branch -f myBranch HEADफिर चेकआउट ने कहा कि शाखा, और इसे धक्का दें। आपके मामले में, myBranchहो सकता है masterकि आप विलय की प्रक्रिया में थे nodeAPI
VonC

कृपया इस आदेश को चलाने के बाद हर स्थानीय परिवर्तन को खोने से सावधान रहें !! ऐसा कुछ भी करने से पहले कुछ git stash & code backup करने पर विचार करें।
काटा

@kta अच्छा बिंदु: मैंने उस चेतावनी को दृश्यमान बनाने के लिए उत्तर को संपादित किया है।
VonC

152

अरे .. यदि आप एक Git noob क्या आप वाकई है git commitसे पहले git push? मैंने पहली बार यह गलती की थी!


10
यह git commit -a -m "your message goes here"मेरे मामले में था
aexl

I LOVE (कटाक्ष) हर बार जब मैं एक नया प्रोजेक्ट जोड़ना चाहता हूं, जिसे मैं कभी-कभी भूल जाता हूं और त्रुटि संदेश मुझे सोचने के लिए प्रेरित करता है कि मैंने कुछ गलत किया है - तो बेशक DUH! प्रतिबद्ध केवल मेरे साथ होता है जब मैं नया बैकअप रिपोजिटरी बनाया जाता हूं और मैं भूल जाता हूं
टॉम स्टिकेल

यहाँ git noob - मैं धकेलने से पहले हर लानत समय को भूल जाना चाहता हूँ - धकेलना स्वचालित रूप से प्रतिबद्ध होना चाहिए अगर आपने इसे पहले किया है
FoxMcCloud

2
@FoxMcCloud करने से के प्रति जागरूक होने के लिए एक महत्वपूर्ण कदम है, मुझे यकीन है कि अगर आप पहले से ही :) ~ है आप इसे प्यार करना सीख जाएगा git add -A, git diff --staged, परिवर्तन के माध्यम से स्क्रॉल देख हम्म बहुत अच्छा, git commit -m 'bam!',git push
AFOC

58

शायद आप एक नई स्थानीय शाखा को आगे बढ़ा रहे हैं?

एक नई स्थानीय शाखा को स्पष्ट रूप से धकेला जाना चाहिए:

git push origin your-new-branch-name

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


3
धन्यवाद! इसने मेरी समस्या "सब कुछ अप-टू-डेट" एक नई शाखा के साथ तय की
पंगु

"आपकी नई-शाखा-नाम" का मतलब क्या है? Ps: आप नए लोगों के बारे में सही हैं।
www-0av-Com

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

पूरी तरह से सहमत हैं "यह वर्कफ़्लो नवागंतुकों के लिए बहुत ही अविश्वसनीय है"। मैं 1 घंटे से इससे जूझ रहा हूं। मैंने रिमोट और लोकल रेपो सेटअप किया। स्थानीय REAME फ़ाइल में परिवर्तन किए गए और इसे दूरस्थ में धकेलने का प्रयास करें और दूरस्थ में कुछ भी परिवर्तन न करें।
वीर

37

मेरा मुद्दा यह था कि मेरी स्थानीय शाखा का रिमोट शाखा से अलग नाम था। मैं निम्नलिखित कार्य करने में सक्षम था:

$ git push origin local-branch-name:remote-branch-name

(क्रेडिट करने के लिए https://penandpants.com/2013/02/07/git-pushing-to-a-remote-branch-with-a-different-name/ )


28

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

वैसे भी, यह सिर्फ एक शाखा है। इसलिए मैं इस स्थिति में आ सकता हूं:

मेरी सक्रिय शाखा वास्तव में मास्टर शाखा नहीं है। ... लेकिन मैं आदतन आदेश देता git pushहूं : (और मैंने पहले किया था git push origin master, इसलिए यह THAT के लिए एक शॉर्टकट है)।

इसलिए मैं आदतन मास्टर शाखा को साझा रेपो पर धकेल रहा हूं ... जो मेरे मामले में एक अच्छी साफ बात है ...

लेकिन मैं भूल गया हूं कि जिन बदलावों पर मैं काम कर रहा हूं वे अभी तक मास्टर शाखा में नहीं हैं !!!

इसलिए हर बार जब मैं कोशिश करता हूं git push, और मैं देखता हूं "सब कुछ अप टू डेट", मैं चीखना चाहता हूं, लेकिन निश्चित रूप से, यह गिट की गलती नहीं है! यह मेरा है।

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


मैं भी चीखना चाहता था, लेकिन फिर, आपने उद्धार के मार्ग का प्रचार किया, और ब्रेंट को मास्टर में विलय कर दिया git push
आरोन सी

16
$ git push origin local_branch:remote_branch

व्याख्या

मेरे पास एक ही त्रुटि थी और इसे जानने के लिए घंटों बिताए। आखिरकार मैंने ढूंढ लिया। मुझे नहीं पता था कि इस तरह से git push origin branch-xधक्का देने से स्थानीय रूप से शाखा-एक्स की खोज करने की कोशिश की जाएगी और फिर दूरस्थ शाखा-एक्स पर धकेल दिया जाएगा।

मेरे मामले में, मेरे पास दो दूरस्थ url थे। मैंने शाखा-एक्स से शाखा-वाई तक एक चेकआउट किया था जब स्थानीय रूप से x रिमोट से पुश करने की कोशिश कर रहा था मुझे संदेश था कि सब कुछ आज तक है जो कि सामान्य कारण है जो मैं दूसरे रिमोट के x पर जोर दे रहा था।

इस तरह के जाल में न पड़ने के लिए छोटी कहानी आपको स्रोत रेफ और लक्ष्य रेफ को निर्दिष्ट करने की आवश्यकता है:

$ git push origin local_branch:remote_branch

अपडेट करें:

यदि आपको अपनी शाखा को धक्का देने पर हर बार इस कमांड को चलाना है, तो आपको निम्नलिखित के साथ अपने स्थानीय और दूरस्थ शाखा के बीच अपस्ट्रीम सेट करने की आवश्यकता है:

$ git push --set-upstream origin local_branch:remote_branch

या

$ git push -u origin local_branch:remote_branch

'गेट पुश अपस्ट्रीम देव: मास्टर' इसका मतलब है कि यह स्रोत को देव से मास्टर तक पहुंचाएगा। सही?
धड़क मधेश

इससे मुझे मदद मिली, मेरे पास एक और स्थानीय शाखा थी जिसका नाम दूरस्थ शाखा था, जिसके कारण भ्रम की स्थिति थी।
ह्यूबर्ट कुबिक

ठीक है, यह निश्चित रूप से मेरे लिए काम कर रहा है, लेकिन मुझे हर बार ऐसा करना पड़ता है कि मैं किसी चीज को रिमोट पर धकेलना चाहता हूं। मैं इसे एक बार और सभी के लिए कैसे ठीक करूं?
समुराईजैक

शायद आपको निम्नलिखित के साथ अपने स्थानीय और दूरस्थ शाखा के बीच अपस्ट्रीम सेट करने की आवश्यकता है: $ git push --set-upstream मूल local_branch: Remote_branch
मेल्चिया

6

ऊपर VonC का उत्तर देखें - मुझे एक अतिरिक्त कदम की आवश्यकता थी:

$ git log -1
- note the SHA-1 of latest commit
$ git checkout master
- reset your branch head to your previously detached commit
$ git reset --hard <commit-id>

मैंने ऐसा किया, लेकिन जब मैंने फिर कोशिश की git push remoterepo master, तो उसने कहा "त्रुटि: कुछ रेफरी को धक्का देने में विफल रही। आपको इतिहास को खोने से रोकने के लिए, गैर-फास्ट-फ़ॉरवर्ड अपडेट को अस्वीकार कर दिया गया, इससे पहले दूरस्थ परिवर्तन (जैसे 'गिट पुल') मर्ज करें। फिर से धक्का। "

इसलिए मैंने 'गेट पुल रिमोटेरेपो मास्टर' किया, और यह एक संघर्ष पाया। मैंने git reset --hard <commit-id>फिर से किया, एक बैकअप फ़ोल्डर git pull remoterepo masterमें परस्पर विरोधी फ़ाइलों की प्रतिलिपि बनाई git commit, फिर से किया , फिर से मेरे प्रोजेक्ट में परस्पर विरोधी फ़ाइलों की प्रतिलिपि बनाई , फिर git push remoterepo master, और इस बार काम किया।

Git ने यह कहना बंद कर दिया कि 'सब कुछ अप टू डेट है' - और इसने 'फास्ट फॉरवर्ड' की शिकायत करना बंद कर दिया।


3

मैंने एक समान स्थिति का सामना किया है; जब मैंने बदलाव किए और करने की कोशिश की git push origin master, तो यह कह रहा था कि सब कुछ अद्यतित है।

मैं git addबदल फ़ाइल और फिर था git push origin master। इसने तभी से काम करना शुरू कर दिया था।


4
git commitपुश करने से पहले क्या आपके पास उस जोड़ी गई फ़ाइल नहीं होगी?
डेविड हार्कस

3

आपके git स्टेटस से, आपके पास संभवतः मेरी एक अलग स्थिति है।

लेकिन वैसे भी, यहाँ मेरे साथ क्या हुआ .. मुझे निम्नलिखित त्रुटि का सामना करना पड़ा:

fatal: The remote end hung up unexpectedly
Everything up-to-date

यहां अधिक जानकारीपूर्ण संदेश यह है कि रिमोट लटका हुआ है। पता चला कि यह http पोस्ट बफर आकार से अधिक होने के कारण है। इसका समाधान इसके साथ बढ़ाना है

git config http.postBuffer 524288000


3

मुझे आज यह समस्या थी और इसका अन्य किसी भी जवाब से कोई लेना-देना नहीं था। यहाँ मैंने क्या किया और मैंने इसे कैसे तय किया:

मेरा एक भंडार हाल ही में स्थानांतरित हुआ, लेकिन मेरे पास एक स्थानीय प्रति थी। मैंने अपनी स्थानीय "मास्टर" शाखा को बंद कर दिया और कुछ बदलाव किए - और फिर मुझे याद आया कि रिपॉजिटरी स्थानांतरित हो गई थी। मैं git remote set-url origin https://<my_new_repository_url>नया URL सेट करता था, लेकिन जब मैंने पुश किया तो यह मेरी नई शाखा को मास्टर करने के बजाय "सब कुछ अप टू डेट" कहेगा।

मैंने इसे पुन: शुरू करके हल किया origin/masterऔर फिर स्पष्ट शाखा नामों के साथ इस तरह धक्का दिया:

$ git rebase <my_branch> origin/master
$ git push origin <my_branch>

मुझे आशा है कि यह किसी को भी मदद करता है जो मेरी समस्या थी!


3

सुपर दुर्लभ - लेकिन अभी भी: Windows, यह है कि हो सकता है पैक-refs , एक पत्र मामले (यानी देव / mybranch) के साथ एक शाखा है, जबकि refs फ़ोल्डर एक अन्य मामले है (यानी देव / mybranch) जब core.ignorecase सही पर सेट है ।

समाधान मैन्युअल रूप से संबंधित पंक्ति को पैक्ड-रेफ से हटाने के लिए है । एक क्लीनर समाधान नहीं मिला।


यह मेरे लिए भी एक मुद्दा था। अंदर गलत मामले के साथ फ़ोल्डर का नाम बदलने के साथ समाप्त हो गया है।। फ़ोल्डर (लॉग / रेफ / हेड, रिफ / हेड)।
एलेक्सी सोलोनेट्स

2

मैं खुद इस बात में भाग गया जब मैंने गितुब पर एक शाखा का विलय किया और स्थानीय स्तर पर इसका विकास जारी रखा। मेरा फिक्स दूसरों के सुझाव से थोड़ा अलग था।

पहले मैंने अपनी पुरानी लोकल ब्रांच से एक नई लोकल ब्रांच ली (जो मैं आगे नहीं बढ़ा सका)। फिर मैंने नई स्थानीय शाखा को मूल सर्वर (Github) पर धकेल दिया। अर्थात

$ git checkout -b newlocalbranch oldlocalbranch
$ git push origin newlocalbranch

यह गितुब पर दिखाने के लिए बदलाव आया, पुरानेलोकब्रांच के बजाय न्यूक्लोकलब्रंच में यद्यपि।


2

मेरे मामले में मेरे पास 2 रिमोट रेपो थे।

git remote -v
originhttps https://asim_kt@...
originhttps https://asim_kt@...
origin  ssh:git@bitbucket.org:...
origin  ssh:git@bitbucket.org:...

दोनों रेपो एक ही थे। बस एक था httpsअन्य था ssh। अवांछित एक, को हटाने तो (मेरे मामले में ssh। के बाद से मैं प्रयोग किया जाता है https, क्योंकि sshकाम नहीं कर रहा था!) मेरे लिए समस्या का समाधान हो।


2

मेरी गलती अब तक बताई गई हर चीज से अलग थी। यदि आपके पास कोई विचार नहीं है कि आपके पास अलग सिर क्यों होगा, तो आप शायद नहीं करते हैं। मैं ऑटोपायलट पर काम कर रहा था git commitऔर git push, और इससे आउटपुट नहीं पढ़ा था git commit। पता चला, यह एक त्रुटि संदेश था क्योंकि मैं भूल गया था -म।

[colin] ~/github/rentap.js [master] M % git commit 'figured out some more stuff with the forms in views and started figuring out row and mode in models so also made matching routes and controllers'
error: pathspec 'figured out some more stuff with the forms in views and started figuring out row and mode in models so also made matching routes and controllers' did not match any file(s) known to git.
[colin] ~/github/rentap.js [master] M % git push
Enter passphrase for key '/home/colin/.ssh/id_ecdsa': 
Everything up-to-date

-amजहां मैं आमतौर पर करता हूं, उसे लगाकर इसे फिक्स्ड करें:

[colin] ~/github/rentap.js [master] M % git commit -am 'figured out some more stuff with the forms in views and started figuring out row and mode in models so also made matching routes and controllers'

2

मैंने उसी मुद्दे का सामना किया है। जैसा कि मैंने स्टेजिंग क्षेत्र में परिवर्तन नहीं जोड़ा। और मैंने सीधे कमांड का उपयोग करके कोड को रिमोट रेपो पर धकेलने की कोशिश की:

git push origin master

और यह संदेश दिखाता है Everything up-to-date

इस समस्या को ठीक करने के लिए, इन चरणों का प्रयास करें

  1. git add .
  2. git commit -m "Bug Fixed"
  3. git push -u origin master

1

सत्यापित करें कि आपने अपना दूरस्थ URL नहीं छोड़ा है।

मैं सिर्फ यह भी उल्लेख करना चाहता था कि एक स्थानीय जेनकींस बिल्ड कॉन्फ़िगरेशन में गिट को सीवीएस के रूप में सक्षम करने के बाद मैं इसमें भाग गया। ऐसा प्रतीत होता है कि जेनकिंस ने मेरे द्वारा दी गई शाखा की सबसे हालिया जांच की और मैंने रेपो को दिए गए रास्तों के अनुरूप अपने रिमोट को भी रीसेट कर दिया। मेरी सुविधा शाखा को फिर से जांचना और 'git रिमोट सेट-url' के साथ मेरे मूल रिमोट url को ठीक करना था। अपनी वर्किंग डायरेक्टरी को बिल्ड टूल की ओर इशारा करते हुए मत जाइए या आपके पास खराब समय होगा। मेरा रिमोट मेरी वर्किंग डाइरेक्टरी में फाइल पथ पर सेट किया गया था, इसलिए जब मैंने समान स्रोत और गंतव्य के साथ परिवर्तनों को धकेलने का प्रयास किया, तो स्वाभाविक रूप से यह सब-अप-टू-डेट रिपोर्ट किया।


1

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


1

एक त्वरित तरीका है जो मैंने पाया। अपने .गित फ़ोल्डर पर जाएं, HEADफ़ाइल खोलें और जो भी शाखा आप मास्टर पर वापस आ गए थे उसे बदल दें। उदा रेफ:refs/heads/master


वास्तव में इसे स्थापित करने से refs/heads/masterमेरा भंडार टूट गया। लेकिन इसे जो मैंने सोचा था कि इसे स्थापित करने के लिए HEAD कमिट ने निम्नलिखित संदेश दिया Warning: you are leaving 1 commit behind, not connected to any of your branches:। मैं एक नई शाखा में कमिटमेंट लेने में सक्षम था और इसे वापस मास्टर में विलय कर दिया।
schmijos

1

मेरी भी यही समस्या थी। मेरे मामले में यह उसी रिमोट के लिए नाम होने के कारण हुआ था। इसने मानक 'उत्पत्ति' का निर्माण किया, लेकिन मैं लंबे समय से 'रिमोट' के रूप में 'जीथब' का उपयोग कर रहा हूं, इसलिए यह वहां भी था। जैसे ही मैंने 'मूल' रिमोट को हटाया, त्रुटि दूर हो गई।


1

मेरे साथ ऐसा हुआ था (मेरे git लॉग में कमिट्स GitHub पर नहीं थे, हालांकि git ने कहा कि सब कुछ अद्यतित था) और मुझे विश्वास है कि समस्या Github थी। मुझे git में कोई त्रुटि संदेश नहीं मिला, लेकिन GitHub में स्थिति त्रुटियां थीं और मेरे कमिट कई घंटे बाद हुए थे।

https://status.github.com/messages

GitHub स्थिति संदेश थे:

  • हम सेवा की अनुपलब्धता की रिपोर्ट की जांच कर रहे हैं।
  • हम GitHub.com तक पहुँचने की समस्याओं की जाँच कर रहे हैं।
  • GitHub.com तक पहुंच बहाल करने के लिए हम डेटा संग्रहण प्रणाली पर विफल हो रहे हैं।

1

मेरी एक और बहुत सरल अभी तक कोई गलती नहीं है: मैं बस -mअपनी प्रतिबद्धता में एक संदेश संशोधक जोड़ना भूल गया । इसलिए मैंने लिखा:

git commit 'My message'

सही के बजाय:

git commit -m 'My message'

नोट: यह कोई त्रुटि नहीं है! लेकिन आप अपने कमिट्स को आगे नहीं बढ़ा पाएंगे और Everything up to dateइसके बदले हमेशा मिलेंगे


0

यहाँ, मेरा समाधान ऊपर से अलग है। मुझे पता नहीं चला कि यह समस्या कैसे होती है, लेकिन मैंने इसे ठीक किया। थोड़ा अप्रत्याशित रूप से।

अब रास्ता आता है:

$ git push origin  use_local_cache_v1
Everything up-to-date
$ git status
On branch test
Your branch is ahead of 'origin/use_local_cache_v1' by 4 commits.
  (use "git push" to publish your local commits)
  ......
$ git push
fatal: The upstream branch of your current branch does not match
the name of your current branch.  To push to the upstream branch
on the remote, use

    git push origin HEAD:use_local_cache_v1

To push to the branch of the same name on the remote, use

    git push origin test
    
$ git push origin HEAD:use_local_cache_v1    
Total 0 (delta 0), reused 0 (delta 0)
remote:

मेरे लिए काम करने वाली कमांड है

$git push origin HEAD:use_local_cache

(आशा है कि आप लोग जल्द से जल्द इस मुसीबत से बाहर निकलेंगे)


0

मुझे पता है कि यह सुपर पुराना है, लेकिन मेरे मामले में मैंने इसे बहुत जल्दी ठीक कर दिया।

मैं एक ही त्रुटि हो रही थी, जबकि एक आगे होने के नाते master। तब मुझे वर्तमान स्टैक ओवरफ्लो पोस्ट मिली। हालांकि, सुझाए गए विचारों के साथ आगे बढ़ने से पहले, मैंने बस एक नई प्रतिबद्धता बनाने का फैसला किया और मूल के लिए धक्का के साथ फिर से प्रयास किया और इसने आसानी से काम किया।

मुझे पता नहीं क्यों, लेकिन शायद यह किसी और के लिए उपयोगी है।


यह वास्तव में प्रश्न का उत्तर प्रदान नहीं करता है। एक बार जब आप कमा काफी प्रतिष्ठा है, तो आप के लिए विशेषाधिकार प्राप्त होगा जवाब वोट दें जैसे आप। इस तरह से प्रश्न के भविष्य के आगंतुकों को उस उत्तर पर एक उच्च वोट संख्या दिखाई देगी, और उत्तर देने वाले को भी प्रतिष्ठा अंकों के साथ पुरस्कृत किया जाएगा। देखें क्यों महत्वपूर्ण मतदान है
वकार उल हक

1
ठीक है, स्पष्टीकरण के लिए धन्यवाद। लेकिन इस मुद्दे पर "वर्कअराउंड" के रूप में क्यों नहीं माना जा सकता है? यह हालांकि समाधान नहीं है, लेकिन यह वैसे भी दूसरों के लिए उपयोगी हो सकता है।
सिस्को

0

एक और संभावना यह है कि आपके पास यह है कि आप जिस निर्देशिका को आगे बढ़ा रहे हैं उसे प्रभावित न करें। इसलिए मेरे मामले में मेरे पास एक संरचना थी

- .git
- README.md
- client/
 - package.json
 - example.js
- api/
 - requirements.txt
 - example.py

और मैंने एक संशोधन करने के लिए प्रतिबद्ध किया README.md, फिर दौड़कर git subtree push --prefix client heroku-client masterसंदेश प्राप्त कियाEverything up-to-date


0

जब मैंने इस भ्रामक त्रुटि का सामना किया तो मैं ज्यूपिटर-नोटबुक के साथ काम कर रहा था ।

मैं ऊपर दिए गए समाधानों के माध्यम से हल करने में सक्षम नहीं था क्योंकि मेरे पास न तो एक अलग सिर था और न ही मेरे स्थानीय और दूरस्थ रेपो के लिए अलग-अलग नाम थे

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.