迁移Git项目到Gitlab

假定Gitlab已经安装, 假定要迁移的Git项目目录为 demo

首先在Gitlab里创建一个新的project, 名称为demo (或者其他名称都可以)

然后在现有的Git项目目录下, 进行以下操作

# 确保代码更新到最新
git pull

# 查看当前远程git服务器上的所有分支, 这一步是用于判断哪些分支需要迁移
git branch -r

# 将本地git的旧orgin改成别的名称
git remote rename origin origin-old

# 将gitlab的git服务设为新的origin
git remote add origin http://192.168.11.22/some_group/demo.git

# 如果需要迁移的branch在本地还不存在, 将其checkout出来
# 如果已经存在了, 就checkout过去, 然后git pull一下确保是最新
git checkout -b branch-104 origin-old/branch-104

# 将本地的所有分支push到gitlab
git push -u origin --all

这样就可以把git这些分支的历史都提交到gitlab上. 以上操作不涉及tag的迁移. -u参数即 --set-upstream, 将设置每个成功push的分支的upstream为origin, 这样以后在执行git pull之类的命令时, 直接会从origin这个remote拖取.

如果要删除旧的origin-old, 可以使用 git remote rm 命令

git remote rm origin-old

如果需要直接修改origin的地址, 用 git remote set-url origin [地址] 命令

如果保留旧的origin-old, 可以作为两个镜像仓库, 代码分别提交或同步

git pull origin master 
git push origin master 

git pull origin-old master
git push origin-old master

  

posted on 2019-06-19 18:02  Milton  阅读(2661)  评论(0编辑  收藏  举报

导航