GitLab远程仓库迁移

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GitLab远程仓库迁移相关的知识,希望对你有一定的参考价值。

  GitLab上的项目迁移,实质上是更改远程仓库的url。我们在同一个用户下面迁移项目的时候可以更改项目的"project name"来实现项目的迁移。但当用户A的项目迁移到用户B的时候,可以在用户B下面新建一个项目,然后把项目A的文件拷贝过来,但是这种容易丢失commit的log记录。不想丢失commit log记录的话,可以用重置url的方法来实现。

1.首先查看UserA当前项目的remote url:

$ git remote -v
origin 	[email protected]:UserA/ansible-playbook.git (fetch)
origin 	[email protected]:UserA/ansible-playbook.git (push)

2.使用git remote set-url重置为UserB的远程仓库:

$ git remote set-url origin [email protected]:UserB/ansible-playbook.git

3.确认重置成功:

$ git remote -v
origin 	[email protected]:UserB/ansible-playbook.git (fetch)
origin 	[email protected]:UserB/ansible-playbook.git (push)

4.git push强制更新:

确认remote url更新了之后,git push -f参数强制更新一下:

git push -fv

TroubleShooting:

在push的时候报错信息:

[remote rejected] master -> master (pre-receive hook declined)

这是因为gitlab默认的master分支是受保护的,需要取消保护之后才能push:

切到project的主页,打开设置“Protected Branches”,把网页下面master分钟unprotect即可。

技术分享

技术分享

参考链接:https://help.github.com/articles/changing-a-remote-s-url/

本文出自 “Jason'blog” 博客,请务必保留此出处http://xujunxian.blog.51cto.com/8614409/1859493

以上是关于GitLab远程仓库迁移的主要内容,如果未能解决你的问题,请参考以下文章

本地git仓库迁移到远程git仓库

gitlab仓库迁移

GitLab Guide

gitlab 远程代码仓库管理

创建新的项目并上传到gitlab远端仓库

gitlab 存储仓库目录设置及数据迁移