“git 仓库的项目名做了改变,为什么旧地址还能生效?”
原因如下:
-
GitHub/码云等平台的重定向机制
主流的代码托管平台(如 GitHub、Gitee、GitLab 等)在你修改了仓库名(比如xm2_api改成xm2-api)后,会自动为旧的仓库名设置 301 重定向。
也就是说,访问旧地址(无论是网页还是 git clone/pull/push)时,平台会自动跳转到新的仓库地址。 -
对开发者友好
这样做是为了避免因为仓库重命名导致所有依赖该仓库的项目、CI/CD 脚本、文档等全部失效,极大提升了开发体验和兼容性。 -
重定向的表现
- 用旧地址
git clone https://github.com/xxx/xm2_api.git,实际上会被重定向到https://github.com/xxx/xm2-api.git。 - 在本地用旧的 remote 地址
git pull、git push也都能正常工作,直到手动更改 remote 地址为止。
- 用旧地址
-
注意事项
- 这种重定向通常是永久的,但如果再创建一个同名的旧仓库(比如又新建了
xm2_api),重定向就会失效。 - 建议长期还是把 remote 地址改成新的,避免未来平台策略变化或重定向失效。
- 这种重定向通常是永久的,但如果再创建一个同名的旧仓库(比如又新建了
总结:
仓库名改了,旧地址还能用,是因为平台自动做了重定向,保证你的开发流程不中断。这是平台的贴心设计,不是 bug,也不是本地缓存的原因。
如需更详细的原理或官方文档说明,可以告诉我你用的平台(GitHub、Gitee 还是其他),我可以帮你查找具体的官方说明。



774

被折叠的 条评论
为什么被折叠?



