解决 failed to push some refs to 远程仓库 的问题

以下是我将本地的项目托管到我的github上的流程

  • 在github新建一个仓库,并且勾选了红色方框

在这里插入图片描述

  • git init 初始化本地仓库
  • git add . 将工作区的文件提交到暂存区
  • git commit -m message 将暂存区的文件提交到本地仓库
  • git remote add origin https://github.com/xxx.git 连接我刚刚建的远程仓库
  • git push -u origin master 将本地仓库文件推送到远程仓库

本以为到这里就顺利结束了,没想到出现了小插曲,提示以下错误信息

在这里插入图片描述

分析一下报错的原因

github中的README.md文件不在本地代码目录中,这就相当于两条并行线,我们需要github上的项目先pull下来与本地项目合并成一条线。我执行了git pull 以后出现以下提示信息。说明这两条分支没有共同的commit,因此想到rebase 变基,让当前所在的分支继承模板的commit。

在这里插入图片描述
这里需要了解 git pull 与 git pull --rebase 区分详解
git pull = git fetch + git merge
git pull --rebase = git fetch + git rebase

解决方案有两种

方案一

  • git pull --rabase origin master
  • 有冲突要先解决冲突,这时Git会停止rebase
  • git add 解决 冲突的文件
  • git rebase --continue(不用git commit )
  • git push -u origin master

方案二

  • 在github上重新创建一个仓库,记得不要勾选上文提到的选项,可以省去很多麻烦。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当你在 Git 中遇到 "failed to push some refs to" 错误时,这通常表示你在尝试推送更改到远程仓库时遇到了问题。这个问题可能由以下几个原因引起: 1. **身份验证问题**:确保你的 Git 帐户已正确登录并授权对目标仓库进行操作。检查你的用户名和密码(如果使用 SSH),或者 SSH 密钥是否设置正确。 2. **网络连接**:确保你的网络连接稳定,尝试重启路由器或检查代理设置(如果有)。 3. **分支冲突**:如果你试图推送的分支存在未解决的合并冲突,你需要先解决冲突再推送。 4. **远程分支不存在**:确保你要推送的分支存在于远程仓库中,如果没有,你可以先 `git push --set-upstream origin <branch-name>` 来跟踪远程分支。 5. **权限问题**:你可能没有对目标分支的写入权限。如果是协作者,请联系仓库管理员确认权限设置。 6. **推送限制**:某些仓库可能设置了推送策略,例如仅允许推送特定分支,确认你是否有权限推送当前的分支。 解决步骤: 1. **查看错误信息详情**:`git status` 和 `git remote -v` 可能会提供更多信息。 2. **解决冲突(如有)**:使用 `git add .`, `git commit -m "解决冲突"`,然后 `git push`。 3. **重授权或设置**:根据上述原因进行相应的调整。 4. **尝试交互式重置**:有时候,`git push -f` 可能会覆盖远程分支,但请谨慎使用,因为它会丢失未被推送的历史记录。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值