迁移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