从一个git仓库内迁移分支代码到另一个git仓库,保存之前仓库的提交记录

简介: 有时候拉取开源仓库到自己的仓库,再拉取时又想保留开源之前的提交路径,并且自己的仓库不想展示分支名称为开源仓库名称,想改为master,可以看下面的几种方式

第一种需求方式

如果A是已有仓库,B是新建立的空仓库。(如下操作,提交记录也会带到新仓库里)

1、在本地拉一下(git clone)A仓库的代码,或者是 git pull 下最新的代码。

2、git remote # 查看本地连接的有哪些 远程仓库,默认是 origin

3、git remote add origin2(这个名字随便起) master # 这里是在本地添加一个新的远程连接

4、git remote set-url origin2 B仓库的地址 # 这里是新加个远程连接 设置上url地址

5、在A的本地仓库 git push origin2 dev:master # origin2 是你想push上哪个远程库,dev 是你想push哪个分支,master 是push到远程的哪个分支。 这个命令执行以后要输密码,记得是新仓库的密码。

6、设置默认提交仓库, 将本地的分支和远程分支做关联,比如master分支 git branch --set-upstream-to=gitlab/master ,其他分支照此办理。

第二种需求,推送时,将B仓库的分支改为Master名称,而非A仓库的分支名称

  1. 克隆 A 仓库:首先,克隆 A 仓库到本地。使用以下命令:
git clone <A仓库URL>
  1. 进入 A 仓库目录:使用以下命令进入克隆的 A 仓库目录:
cd <A仓库目录>
  1. 查看 A 仓库的分支列表:使用以下命令查看 A 仓库的所有分支:
git branch -a

这将列出 A 仓库中的所有分支,包括本地分支和远程分支。

  1. 切换到要推送的分支:使用以下命令切换到要推送到 B 仓库的分支:
git checkout <要推送的分支>
  1. 重命名分支为 master:使用以下命令将当前分支重命名为 master:
git branch -m master
  1. 添加 B 仓库作为新的远程仓库:添加 B 仓库作为新的远程仓库。使用以下命令:
git remote add origin <B仓库URL>

这将添加一个名为 origin 的远程仓库,它指向 B 仓库 URL。

  1. 推送分支到 B 仓库:使用以下命令将重命名的 master 分支推送到 B 仓库:
git push -u origin master

-u 参数将设置 origin/master 作为本地分支的上游。

完成上述步骤后,A 仓库中指定的分支将被推送到 B 仓库,并在 B 仓库中命名为 master 分支。请确保在执行这些操作之前备份你的代码。

相关文章
|
3天前
|
存储 开发工具 git
TortoiseSVN迁移到本地git
通过上述步骤,您可以将项目从TortoiseSVN迁移到本地Git仓库。这一过程包括从SVN仓库检出代码、使用 `git-svn`转换为Git仓库、优化Git仓库以及将本地仓库推送到远程Git仓库。以下是思维导图示例,帮助您更好地理解迁移过程。
47 27
|
1月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
186 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
1月前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
85 16
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
3月前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
130 2
|
4月前
|
网络协议 网络安全 开发工具
【Git快速入门】Git代码管理手册与协同开发之远程仓库(四)
【Git快速入门】Git代码管理手册与协同开发之远程仓库(四)
|
4月前
|
JavaScript 前端开发 开发工具
一身反骨的我,用--no-verify绕开了git代码提交限制!
【10月更文挑战第7天】一身反骨的我,用--no-verify绕开了git代码提交限制!
267 0
|
4月前
|
开发工具 git
git如何修改提交代码时的名字和邮箱?
git如何修改提交代码时的名字和邮箱?
583 4
|
Shell 开发工具 git
使用git迁移git项目并保留提交记录
场景 在平时开发中我们有自己的git仓库,组内提交都是在这个库。突然有一天,领导说要把这个库整合到另一个更大的工程中(华为云的看板),那里面有前后端的代码;为了方便大家查找,我们需要将各个组的代码迁移到同一个大工程下。
11211 0
|
27天前
|
Java 网络安全 开发工具
Git进阶笔记系列(01)Git核心架构原理 | 常用命令实战集合
通过本文,读者可以深入了解Git的核心概念和实际操作技巧,提升版本管理能力。
|
28天前
|
网络安全 开发工具 git
mac git clone命令提示git@gitee.com: Permission denied (publickey).问题修复
mac git clone命令拉取gitee上项目代码时提示密钥问题