热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

两个git库之间迁移_Git远程仓库迁移

我们在使用Git对项目进行管理时,有时候会遇到仓库迁移的需求,如从github迁移到自己搭建的私有Gitlab仓库。迁移步骤如下:举例&#

我们在使用Git对项目进行管理时,有时候会遇到仓库迁移的需求,如从github迁移到自己搭建的私有Gitlab仓库。迁移步骤如下:

举例:

源库地址:git@github.xxx.com/groups:test.com.git

目标库地址:gitlab@gitlab.xxx.com/newgroups:newtest.com.git

1、克隆源版本库

在Shell执行如下命令:

git clone --bare git@github.xxx.com/groups:test.com.git

命令执行结果如下:

Initialized empty Git repository in /home/test/test.com.git/

remote: Counting objects: 8569, done.

remote: Compressing objects: 100% (2606/2606), done.

remote: Total 8569 (delta 6374), reused 7917 (delta 5793)

Receiving objects: 100% (8569/8569), 83.36 MiB | 9.57 MiB/s, done.

Resolving deltas: 100% (6374/6374), done.

2、设置目标仓库

1、将目标仓库master分支置为空,删除已经存在的文件(如果没有master,需先生成master分支,如添加README.md文件即可)

2、将master分支修改成UnProtected状态,也就是未保护状态。这个需要Git账号具有相应权限。修改位置项目->Settings->Repository->Protected Branches

点击Unprotect按钮即可取消master分支保护

3、将源Git镜像推送到目标库地址

进入克隆好的xxx.git文件夹中,执行命令:

git push --mirror gitlab@gitlab.xx.com:newgroups/newtest.com.git

命令执行结果如下:

Counting objects: 8569, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (2025/2025), done.

Writing objects: 100% (8569/8569), 83.36 MiB | 28.47 MiB/s, done.

Total 8569 (delta 6374), reused 8569 (delta 6374)

To gitlab@github.meizu.com:private/ba.meizu.com.git

+ 5269023...ec9c11e master -> master (forced update)

* [new branch] feature/eco -> feature/eco

* [new branch] origin/feature/eco -> origin/feature/eco

如上所示,完整的Git仓库就迁移归来了,包括记录和各个分支。



推荐阅读
  • 本文详细介绍了git常用命令及其操作方法,包括查看、添加、提交、删除、找回等操作,以及如何重置修改文件、抛弃工作区修改、将工作文件提交到本地暂存区、从版本库中删除文件等。同时还介绍了如何从暂存区恢复到工作文件、恢复最近一次提交过的状态,以及如何合并多个操作等。 ... [详细]
  • 初始化初始化本地空版本库,仓库,英文名repositorymkdirtest&&cdtestgitinit克隆项目到本地gitclone远程同 ... [详细]
  • 先记住几个专用名词,如下:Workspace:工作区IndexStage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库#在当前目录新建一个G ... [详细]
  • 本文讨论了clone的fork与pthread_create创建线程的不同之处。进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合。在调用系统调用fork创建一个进程时,子进程只是完全复制父进程的资源,这样得到的子进程独立于父进程,具有良好的并发性。但是二者之间的通讯需要通过专门的通讯机制,另外通过fork创建子进程系统开销很大。因此,在某些情况下,使用clone或pthread_create创建线程可能更加高效。 ... [详细]
  • 本文介绍了解决github无法访问和克隆项目到本地的问题。作者建议通过修改配置文件中的用户名和密码来解决访问失败的问题,并提供了详细步骤。同时,还提醒读者注意输入的用户名和密码是否正确。 ... [详细]
  • 本文讨论了在使用Git进行版本控制时,如何提供类似CVS中自动增加版本号的功能。作者介绍了Git中的其他版本表示方式,如git describe命令,并提供了使用这些表示方式来确定文件更新情况的示例。此外,文章还介绍了启用$Id:$功能的方法,并讨论了一些开发者在使用Git时的需求和使用场景。 ... [详细]
  • 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之六 || API项目整体搭建 6.1 仓储模式
    代码已上传Github+Gitee,文末有地址  书接上文:前几回文章中,我们花了三天的时间简单了解了下接口文档Swagger框架,已经完全解放了我们的以前的Word说明文档,并且可以在线进行调 ... [详细]
  • 修正我的GitHub commit 数据
    早晨上班,滴滴搭车里,我在掘金这个帖子看到大家晒自己的Github活跃记录,我也晒了下自己的记录。不过太少了。有遗漏的commits状况这也让我知道,自己觉得自己很忙的,实际上提交 ... [详细]
  • 这篇文章给大家介绍怎么从源码启动和编译IoTSharp ,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。IoTSharp项目是 ... [详细]
  • 本文整理了Java中org.assertj.core.api.AbstractPathAssert.existsNoFollowLinks()方法的一些代码示例,展示了 ... [详细]
  • 使用gitolite搭建一个私有的git服务器,来管理git仓库。有了它,就可以跟小伙伴们愉快地进行远程协作啦。今天又折腾了一遍,在这里把几个关键的步骤记下来,方便以后查阅。准备工 ... [详细]
  • 1.码云上根据需求创建项目;2.进入项目——克隆下载 选择复制SSH3.clone码云上的项目到本地:在相关目录(如A)下运行终端,执行指令:gitclone复制的SSH地址;  ... [详细]
  • 使用npmi编译vue项目出现无法下载github.com中的对应的包源文件报错信息如下:npmERR!fatal:unabletoaccess'https:github ... [详细]
  • Spark Streaming和Kafka整合之路(最新版本)
    2019独角兽企业重金招聘Python工程师标准最近完成了SparkStreaming和Kafka的整合工作,耗时虽然不长,但是当中还是遇到了不少 ... [详细]
  • eclipse_在eclipse上使用github,向github中提交项目
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了在eclipse上使用github,向github中提交项目相关的知识,希望对你有一定的参考价值。 ... [详细]
author-avatar
徐青乔府_631
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有