当我试图跑
git push origin master --force
我刚得到
Counting objects: 2649, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (1280/1280), done.
error: RPC failed; result=22, HTTP code = 413 | 116 KiB/s
fatal: The remote end hung up unexpectedly
Writing objects: 100% (2504/2504), 449.61 MiB | 4.19 MiB/s, done.
Total 2504 (delta 1309), reused 2242 (delta 1216)
fatal: The remote end hung up unexpectedly
Everything up-to-date
这与不安全有关吗?我尝试在Fatal: The remote end hung up unexpectedly的答案中创建一个公钥并再次运行它,但它仍然无效 . 我实际上没有使用钥匙吗?如果是这样,我该如何使用它?
21 回答
拉我碰巧有同样的错误 .
我做了"http.postBuffer"把戏 . 它解决了它,但是当我想推动时,我又遇到了错误 .
什么解决了我的问题:
1.使用其他虚拟机将其克隆到其他文件夹 . (Linux)的 .
我做了我的改变 .
3.用我最初无法推送的原始虚拟机推送它 . (视窗)
当我在.ssh中输入错误的密钥对时出现此错误 . 将pubkey添加到github(在设置中)为我修复了这个问题 .
我也有同样的问题 . 我在git网页上注意到SSH克隆URL具有下一个结构:
我可以通过“/”更改“:”来解决我的问题,如下所示:
可能这可能会有所帮助 .
好像它可能是千件之一 .
对我来说,我最初是通过SourceTree推动大师并开发(大师没有变化) . 改变这种发展只会起作用 .
当我拼错我的远程分支名称时,我收到此错误
这与How do I get github to default to ssh and not https for new repositories类似 . 可能值得尝试从http协议切换到ssh:
问题是由于git / https缓冲区设置 . 为了解决它(取自Git fails when pushing commit to github)
然后再次运行命令
原因:已超出Git的默认文件发布大小 .
方案:
导航到repo .
导航到存储库后,运行以下命令将缓冲区增加到500MB:
你可能会收到这样的错误
那是因为你没有本地
.git/config
文件你可以通过这个命令使它工作git config --global http.postBuffer 524288000
其他解决方案在我的情况下不起作用,做垃圾收集为我修复它:
git gc --aggressive
此错误也可以通过存储库中的 missing write permissions 抛出 .
我的具体案例是这样的:
我用我服务器的
root
用户创建了一个repo(通过SSH) .我安装了a git service并创建了一个
git
linux用户,该用户应该管理所有与git相关的操作 .到那时,我忘记了回购首先是用
root
用户创建的,而git
用户根本没有文件权限将任何内容写入存储库 .在我们的例子中,问题是一个克隆,它写了一个
.git/config
文件,其中包含一个只读访问方法的url条目 . 将URL从://
方法更改为@
方法可解决问题 .运行
git remote -v
点亮了一些问题 .您可能在现有存储库中克隆了存储库,解决问题可以简单地在另一个目录中克隆存储库,并将更改复制到此新目录,然后运行推送 .
与其他一个答案相反 - 我在使用ssh推送时遇到了问题 - 我切换到https并修复了它 .
如果你正在使用git for windows(如果你在Windows机器上使用它,你可能会这样做),并且这里没有其他修复工作适合你,请尝试转到https://github.com/git-for-windows/git/releases,并在版本2.4上或之后获得版本 . 5 . 为我修好了 .
另外一个补充,因为我以不同的方式遇到了这个错误,谷歌把我带到了这里 .
我的问题是案件不匹配;一个camelCase而另一个没有 . 显然,GIT在没有告诉你原因的情况下阻止你这样做 . 因此,如果您的分支仅在大写字母中与远程分支不同,请尝试将它们更改为相同 .
见:Git: 'Master cannot be resolved to branch' after merge
更新OSX平台后可能会发生这种情况 .
打开终端并导航到.ssh文件夹,然后输入
ssh-add -K ~/.ssh/id_rsa
我能够使用Git Shell解决这个问题 .
github.com中的每个存储库都为您提供了可用于使用Shell下载的HTTPS / SSH / Subversion URL,请参见此处:http://prntscr.com/8ydguv .
根据GitHub最近的变化,SSH似乎是最好的方法 .
在Shell中使用的命令:
似乎几乎毫无意义地添加了一个答案,但是当我终于发现它是Visual时,我正在奋斗这么多年Studio Online遭遇零星停电 . 当VS继续提示信用卡而且VSO网站有时会给出500分时,这一点就变得很明显了 .
之后我将HTTP后缓冲区设置回2Mb,因为我认为它对许多较小的帖子效果更好 .
卢克
这样做可以看到你正在使用的钥匙; ssh -vT git@github.digitalglobe.com
然后确保在您的构建中,您在开始时运行此操作 . eval“$(ssh-agent -s)”ssh-add~ / .ssh / id_rsa
1)cd到项目目录
2)
git status
3)
git checkout -f HEAD
4)通过再次拉下主人确认成功,以确保你的回购看上去不完整是最新的
如果您从Bitbucket克隆repo时从Visual Studio的Git中获得有问题的错误,则此方法有效