gitlab上传新仓库,保留原仓库提交记录,原仓库远程地址已经失效,只有本机还有提交记录

1. 查看本地仓库当前的远程地址
复制代码
git remote -v

输出:

origin https://旧地址.git (fetch)

origin https://旧地址.git (push)

2. 修改远程地址为新的 GitLab 仓库地址
复制代码
git remote set-url origin 新仓库地址

新仓库在 GitLab 或自己搭建的gitlab服务新建仓库页面获取(通常是 https://gitlab.com/用户名/仓库名.git 或 SSH 地址 git@gitlab.com:用户名/仓库名.git)。

如果需要新增一个远程(而非替换),可先添加再切换默认推送:

复制代码
git remote add new-origin 新仓库地址
git push -u new-origin main  # 后续推送默认用 new-origin
3. 推送所有分支和提交记录

将本地所有分支(包括 main/master 及其他分支)推送到新仓库:

复制代码
# 推送主分支(确保当前在主分支,如 main 或 master)
git push -u origin main  # -u 关联远程分支,后续可直接 git push

# 推送其他分支(如果有)
git push origin 分支名

如果需要一次性推送所有分支和标签:

复制代码
git push origin --all  # 推送所有分支
git push origin --tags  # 推送所有标签(如果有)

如果推送失败提示 "仓库非空":说明新仓库初始化时自动创建了 README 或 .gitignore,需先拉取合并再推送:

复制代码
git pull origin main --allow-unrelated-histories  # 强制合并无关历史
git push -u origin main
相关推荐
霸道流氓气质13 天前
GitLab CI/CD 完全指南
linux·ci/cd·gitlab
sbjdhjd13 天前
从零搭建企业级 CI/CD(下):Jenkins+GitLab+Harbor 全链路实战指南
git·servlet·ci/cd·云原生·云计算·gitlab·jenkins
用什么都重名14 天前
Git 合并两个无共同历史的分支:从报错到解决全记录
git·gitlab
master33614 天前
GitLab (Docker) 常用命令及解决方案清单
docker·容器·gitlab
qq_3564086614 天前
GitLab 单机私有化部署文档(基于 Docker 环境)
docker·gitlab
开开心心就好16 天前
解决截图被拦截黑屏问题的免费小工具
安全·智能手机·flink·kafka·pdf·音视频·1024程序员节
lisanmengmeng16 天前
gitlab 免密配置
linux·服务器·gitlab
求知若渴,虚心若愚。16 天前
Jenkins 自动化流水线(CICD)
运维·自动化·gitlab
mnasd18 天前
Gitlab + Jenkins 实现 CICD
运维·gitlab·jenkins
鹤鸣的日常19 天前
前端运行时动态环境变量方案
前端·react.js·docker·前端框架·vue·gitlab