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

同一服务器移动Git裸仓库后git push失败,正确操作流程是什么?

问题原因说明

这个现象完全符合预期:git remote set-url 命令只会修改[remote "xxx"]配置段下的url属性,不会修改分支绑定的remote配置。
你报错的核心原因有两个:

  1. 你的master分支配置里的remote字段直接填写了旧的相对路径../bare-repo.git,没有使用origin这个远程别名。执行无参数的git push时,Git会优先读取当前分支绑定的remote配置,直接访问旧路径导致报错。
  2. 从你贴的配置看,origin的url也存在拼写错误:你配置里写的是/git/bare.repo.git(中间是点),实际应该是/git/bare-repo.git(中间是横杠),这也是你即使指定push到origin也会出错的原因。
正确操作流程
  • 第一步:修正origin远程地址的拼写错误
git remote set-url origin /git/bare-repo.git
  • 第二步:将master分支的remote绑定到origin别名,避免后续修改远程地址时还要重复修改分支配置
git config branch.master.remote origin
  • 第三步:验证配置是否生效
    执行git config branch.master.remote,输出应为origin
    执行git remote -v,确认origin的push/fetch地址均为/git/bare-repo.git
  • 第四步:测试推送
git push

后续如果再调整裸仓库的存储路径,只需要执行一次git remote set-url修改origin地址即可,所有绑定到origin的分支都会自动使用新地址,不需要额外修改分支配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 21:06:10