Bitbucket同步仓库更新时提示无法读取远程仓库如何解决
解决步骤
1. 修正命令拼写错误
你添加的上游远程仓库名称为someuser/somerepo,但执行fetch操作时误写为someuser/ow,首先修正远程仓库配置:
# 先删除已添加的错误远程仓库(如果存在) git remote remove someuser/somerepo # 重新添加上游源仓库,建议命名为upstream便于后续识别 git remote add upstream git@bitbucket.org:someuser/somerepo.git
2. 修复SSH公钥认证报错
Permission denied (publickey)报错和仓库访问权限无关,是你本地的SSH公钥未绑定到Bitbucket账号导致,按以下步骤操作:
- 检查本地是否存在SSH密钥:打开Git Bash执行
ls ~/.ssh,确认是否有id_rsa(私钥)和id_rsa.pub(公钥)文件 - 如无密钥,执行生成命令:
ssh-keygen -t rsa -C "你的Bitbucket注册邮箱",全程按回车使用默认配置即可 - 读取公钥内容:执行
cat ~/.ssh/id_rsa.pub,复制输出的全部内容 - 打开Bitbucket个人设置,找到「SSH keys」选项,将复制的公钥粘贴添加
- 验证配置结果:执行
ssh -T git@bitbucket.org,返回认证成功提示即为配置完成
3. 执行仓库同步
完成上述配置后,按以下步骤同步上游源仓库内容:
# 拉取上游仓库最新内容 git fetch upstream # 切换到本地master分支(你已在该分支可跳过) git checkout master # 合并上游master分支内容到本地 git merge upstream/master # 手动解决所有代码冲突后,提交更改 git add . git commit -m "同步上游仓库最新内容" # 推送到你自己的远程仓库 git push origin master
内容的提问来源于stack exchange,提问作者Stepan Yakovenko
相关产品推荐
相关产品推荐

