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
相关推荐
daemon.qiang1 天前
国内虚拟机对接 Freedesktop:Fork xserver、自建 Runner 与提交 MR 实战
linux·ubuntu·centos·gitlab·开源软件
比奥利奥还傲.3 天前
哪吒监控面板实战:部署 Dashboard、接入 Agent、钉钉告警,再配置固定公网访问
网络·人工智能·分布式·1024程序员节
默 语4 天前
Java新手入门:从零开始安装JDK并配置环境变量
java·开发语言·python·mysql·group by·1024程序员节·数据去重
snow@li6 天前
服务器运维:K3S 下 Jenkins ↔ GitLab 的 CI/CD 闭环 / 访问成功
运维·gitlab·jenkins
旧梦星轨7 天前
Git Flow 工作流实践
git·gitee·gitlab·github
旧梦星轨8 天前
Github Flow 与 Gitlab Flow工作流实践解读
gitlab·github
极小狐11 天前
干掉流水线里的长期密钥:用 OIDC 让 CI/CD 与云以临时凭证对接
microsoft·ci/cd·gitlab·devops·ci·cd·oidc
snow@li11 天前
服务器运维:阿里云安装软件gitlab/智能体协助安装/智能体协同运维
运维·gitlab
极小狐11 天前
CI 流水线提速实战:缓存设计与依赖代理的工程实践
缓存·ci/cd·gitlab·devops
DevOps老兵12 天前
AI Infra实战11:模型部署Pipeline——CI/CD自动化
人工智能·ci/cd·ai·自动化·gitlab