You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

新建Bitbucket仓库可克隆但无法推送,如何排查解决?

排查Bitbucket克隆成功但推送失败的问题

以下是针对你遇到的克隆正常但推送报错的排查方向:

  • 检查仓库的用户权限
    登录Bitbucket网页端,进入目标仓库的「设置」→「用户和权限」,确认当前关联的SSH密钥对应的账户拥有写权限(比如「写入者」或「管理员」角色)。克隆仅需读权限,推送需要写权限,新建仓库时可能默认配置了只读权限。

  • 查看分支保护规则
    进入仓库的「设置」→「分支设置」,检查master分支是否开启了保护规则:比如要求通过Pull Request合并、禁止直接推送、或限制仅特定用户可推送。若存在这类规则,需调整规则或通过PR完成代码合并。

  • 确认远程分支名称匹配
    当前Bitbucket新建仓库默认主分支为main而非master,执行以下命令查看远程分支:

    git ls-remote --heads origin
    

    若远程显示分支为main,可将本地master重命名后推送:

    git branch -m master main
    git push origin main
    
  • 修复本地SSH密钥权限
    即便ssh -T验证通过,本地私钥权限过宽也可能引发推送异常。执行以下命令修正权限:

    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/id_rsa
    

    (若你的私钥文件名不是id_rsa,替换为对应文件名即可)

  • 排查多SSH密钥冲突
    若本地同时配置了多平台SSH密钥(如Github+Bitbucket),需确认是否通过~/.ssh/config指定了Bitbucket对应的密钥:
    编辑~/.ssh/config文件,添加如下配置(替换为你的密钥路径):

    Host bitbucket.org
      IdentityFile ~/.ssh/bitbucket专用密钥文件名
      User git
    

    保存后重新测试推送。

  • 核对远程仓库路径
    登录Bitbucket仓库页面,复制官方提供的SSH路径,与本地git remote -v输出对比,检查用户名/工作区、仓库名是否存在拼写错误。

  • 确认Bitbucket账户的SSH密钥状态
    进入Bitbucket个人设置→「SSH密钥」,检查本地当前使用的公钥(执行cat ~/.ssh/id_rsa.pub获取内容)是否已添加,且状态为「启用」,未被误删除或禁用。

内容的提问来源于stack exchange,提问作者randy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 13:03:23