git धक्का विफल: RPC विफल; परिणाम = 22, HTTP कोड = 411


127

मेरी एक ही शाखा है। कुछ महीनों से मैं उपयोग कर रहा हूं

git push origin master

मेरे स्थानीय भंडार के लिए प्रतिबद्ध है। पिछली रात के बाद मैंने अपने स्थानीय रिपॉजिटरी में कुछ छोटे बदलाव किए और उसी कमांड का उपयोग करके पुश करने की कोशिश की, मुझे यह त्रुटि मिली:

error: RPC failed; result=22, HTTP code = 411
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
Everything up-to-date

मैंने गुगली की और इस तरह के और इस एक जैसे सवालों को पाया , लेकिन इन सवालों के जवाबों में से कोई भी मेरी समस्या का हल नहीं करता है।

अधिकांश उत्तर अलग सिर की समस्या का सुझाव देते हैं । फिर भी मुझे नहीं लगता कि मेरा सिर अलग है। न ही मुझे लगता है कि मैं गलत शाखा पर हूं (क्योंकि मेरे पास केवल एक शाखा है ...)

मैंने यह जानने के लिए कुछ प्रयोग किए कि क्या गलत है, और यहाँ परिणाम हैं:

(1) सबसे पहले मेरा git statusआउटपुट आता है

# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
# egal.aux
# egal.blg
# egal.out
# egal.pdf
# egalcar.aux
# egalcar.blg
# egalcar.pdf
nothing added to commit but untracked files present (use "git add" to track)

(2) जब मैं टाइप git reflogकरता हूं, तो मैं अपने सभी स्थानीय कमिट देख सकता हूं, लेकिन रिमोट रिपॉजिटरी सिर्फ अपडेट नहीं होगी।

(३) जब मैं टाइप करता git branch -aहूं, मुझे मिलता है

* master
  remotes/origin/master

(४) जब मैं टाइप करता git remote show originहूं, मुझे मिलता है

* remote origin
  Fetch URL: http://github.com/CherryQu921/egaldoc_en
  Push  URL: http://github.com/CherryQu921/egaldoc_en
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (fast-forwardable)

मुझे लगता है कि आउटपुट की अंतिम पंक्ति ("फास्ट-फॉरवर्डेबल") अजीब है, लेकिन मुझे यकीन नहीं है कि क्या गलत है ...


fast-forwardableइसका मतलब है कि आप अपने स्थानीय परिवर्तनों को दूरस्थ शाखा तक
पहुंचा सकते हैं

जवाबों:


292

यदि आप HTTP या HTTPS के साथ Git रिपॉजिटरी में परिवर्तन के एक बड़े सेट को धकेलने का प्रयास करते हैं, तो आपको त्रुटि जैसे त्रुटि संदेश मिल सकता है RPC failed; result=22, HTTP code = 411:। यह Git कॉन्फ़िगरेशन डिफॉल्ट के कारण होता है जो कुछ HTTP ऑपरेशंस को 1 मेगाबाइट तक सीमित करता है।

इस सीमा को बदलने के लिए अपने स्थानीय रिपॉजिटरी के भीतर चलाएं

git config http.postBuffer *bytes*

बाइट्स की अनुमति बाइट्स की अधिकतम संख्या है। उदाहरण के लिए:

git config http.postBuffer 524288000

500MB के लिए (साभार @Hengjie)


52
एक उदाहरण git config http.postBuffer 524288000500MB के लिए है ।
हेंगजी

9
यदि आप gitlab का उपयोग कर रहे हैं, तो आपको अपना nginx config भी बदलना होगा ( /etc/nginx/sites-available/gitlab)। अधिक जानकारी: github.com/gitlabhq/gitlabhq/issues/3099
DanielB

क्या होगा अगर यह दिखाता है RPC failed; result=22, HTTP code = 502?
दिपेश रायचाना

2
मुझे अभी भी निम्नलिखित त्रुटि मिल रही है: RPC विफल; परिणाम = 22, एचटीटीपी कोड = 504
बिटकोबेट में

23

आप इसे विश्व स्तर पर भी कर सकते हैं -

git config --global http.postBuffer 524288000

यह सभी स्थानीय रिपॉजिट्स को 500MB तक डेटा पुश करने की अनुमति देगा।


3

प्रदान किए गए किसी भी समाधान ने हमारे लिए काम नहीं किया। हमें समाधान के sshबजाय यह काम करने के लिए स्विच करना पड़ा HTTPS


2

यदि आप Windows के लिए TortoiseGit का उपयोग कर रहे हैं, तो सबसे आसान तरीका एकीकृत कॉन्फ़िगरेशन का उपयोग करना है।

फ़ाइल एक्सप्लोरर में बाईं ओर माउस बटन दबाएं, TortoiseGit -> सेटिंग चुनें । जानकारी संदेश स्वीकार करें। अब, आप चुन सकते हैं कि क्या आप संपत्ति को केवल वर्तमान परियोजना या सिस्टम व्हाइड के लिए कॉन्फ़िगर करना चाहते हैं। सिस्टमवाइड कॉन्फिगरेशन प्रेस के लिए "सिस्टमवाइड गिटकॉन्फ को एडिट करें" और अगली लाइन को सेक्शन में जोड़ें [http]:

postBuffer = 524288000

(यह खंड [http]मौजूद नहीं है, इसे बनाएं)


1

मैंने 22 त्रुटि को निम्नानुसार हल किया: "गिट क्लोन" कमांड में मैंने उपयोगकर्ता की आपूर्ति नहीं की: पासवर्ड। क्लोन ने काम किया, लेकिन धक्का नहीं। 22 त्रुटि के लिए समाधान:। अगस्त को इस तरह संशोधित करें / कॉन्फ़िगर करें: url = http: // उपयोगकर्ता: pwd @ host / ... फिर, पुश ने काम किया।

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