您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么解決Gitlab-error中RPC failed; result=22問題”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
對Gitlab私有倉庫進行代碼push操作,產生如下異常信息:
Counting objects: 875, done. Delta compression using up to 8 threads. Compressing objects: 100% (523/523), done. Writing objects: 100% (875/875), 42.94 MiB | 9.72 MiB/s, done. Total 875 (delta 206), reused 2 (delta 0) error: RPC failed; result=22, HTTP code = 500 fatal: The remote end hung up unexpectedly fatal: The remote end hung up unexpectedly
Gitlab官方對此issue的反饋信息:https://gitlab.com/gitlab-org/gitlab-ce/issues/12629
查看官方issue后,可以發現官方對此問題的解決方式基本是以下兩種方案:
更換CentOS操作系統為Ubuntu
更換Nginx引擎為Tomcat
兩種方案操作成本都很昂貴,不可接受
因為gitlab本身自己封裝了nginx、redis等工具,包括這些工具的配置也一并解決,所以在推代碼的過程中,如果一次性提交的commit體積過大,超出max package的限定值,那么可能會產生上述異常
而絕對不是nginx或者操作系統本身的問題
但變更gitlab配置又是一件非常麻煩的事情,所以這里換一種思路:我們不依賴http協議進行上傳,換用ssh協議便可以繞開這個問題
新的解決辦法:變更提交方式為ssh即可
具體操作步驟:
提交public key到Gitlab的賬戶下
這一步ssh key的生成和提交可以參考我的這邊博客:GitHub——ssh免密登錄
變更項目remote地址
在項目路徑下使用命令 git remote -v
如果是以http/https形式上傳代碼的話,那么地址格式類似于:gitlab http://${your domain name}/liumapp/${your project name}.git (fetch)
我們要做的,就是把它變更為以ssh形式進行上傳,要將地址變更為類似:gitlab git@github.com:liumapp/${your project name}.git
操作命令 git remote set-url gitlab git@${your domain name}:liumapp/${your project name}.git
順便一提,上面出現的liumapp請自行替換為自己的gitlab賬號名稱
使用ssh推代碼, git push ,問題解決
“怎么解決Gitlab-error中RPC failed; result=22問題”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。