将代码迁移至新gitlab仓库
https://192.168.10.36/组名/项目名是新的 GitLab 仓库地址。将代码迁移到另一个 GitLab 远程仓库(http://192.168.10.36/组名/项目名)项目名需要按照推送的项目来命名,可以按照以下步骤操作。2. 推送代码到新的远程仓库将本地仓库的所有分支和标签推送到新的远程仓库。1. 添加新的远程仓库首先,你需要在本地仓库中添加新的远程仓库地址。注意:需要先在远
·
将代码迁移到另一个 GitLab 远程仓库(http://192.168.10.36/组名/项目名)项目名需要按照推送的项目来命名,可以按照以下步骤操作。
1. 添加新的远程仓库
首先,你需要在本地仓库中添加新的远程仓库地址。
1.1 查看当前远程仓库
运行以下命令,查看当前配置的远程仓库:
git remote -v
输出示例:显示了旧的地址
origin https://192.168.10.30/组名/项目名 (fetch)origin https://192.168.10.30/组名/项目名 (push)
1.2 添加新的远程仓库
运行以下命令,添加新的远程仓库地址:
git remote add new-gitlab https://192.168.10.36/组名/项目名
new-gitlab 是远程仓库的名称,你可以自定义(例如 new-gitlab 或 gitlab2)。https://192.168.10.36/组名/项目名 是新的 GitLab 仓库地址。
1.3 验证远程仓库配置
再次运行以下命令,检查远程仓库是否添加成功:
git remote -v
输出示例:
origin https://192.168.10.30/组名/项目名 (fetch)
origin https://192.168.10.30/组名/项目名 (push)
new-gitlab http://192.168.10.36/组名/项目名 (fetch)
new-gitlab http://192.168.10.36/组名/项目名 (push)
2. 推送代码到新的远程仓库
将本地仓库的所有分支和标签推送到新的远程仓库。
2.1 推送所有分支
运行以下命令,推送所有分支:
git push new-gitlab --all
2.2 推送所有标签
运行以下命令,推送所有标签:
git push new-gitlab --tags
3. 验证推送结果
登录到新的 GitLab 仓库页面:http://192.168.10.36/组名/项目名检查以下内容:
分支:
进入 Repository > Branches,确认所有分支是否成功推送。
标签:
进入 Repository > Tags,确认所有标签是否成功推送。代码:检查代码文件是否完整。
4. 更新默认远程仓库(可选)
如果你希望将新的 GitLab 仓库设置为默认远程仓库,可以运行以下命令:
git remote set-url origin http://192.168.10.36/组名/项目名
然后删除旧的远程仓库配置(如果需要):
git remote remove origin
5、使用shell脚本批量迁移代码到新仓库
如果有很多代码要迁移到新仓库可以用以下脚本直接推送到新仓库
#!/bin/bash
# 定义 Git 仓库的基本 URL
#旧仓库地址
GITLIST_BASE_URL="http://admin@192.168.10.30/组名/"
新仓库地址
GITLAB_BASE_URL="http://192.168.10.36/组名"
# 仓库名称列表
REPOSITORIES=(
"app.git"
"......"
"windo.git"
)
# 环境变量
GITLAB_USERNAME="新仓库用户名"
GITLAB_PASSWORD="密码"
# 循环克隆每个仓库
for REPO in "${REPOSITORIES[@]}"
do
echo "正在克隆仓库: $REPO"
git clone --mirror "$GITLIST_BASE_URL$REPO" || { echo "克隆仓库 $REPO 失败"; continue; }
# 进入克隆的仓库目录
if [ -d "$REPO" ]; then
cd "$REPO"
else
echo "目录 $REPO 不存在,跳过推送"
continue
fi
# 设置 GitLab 远程仓库
git remote set-url origin "http://$GITLAB_USERNAME:$GITLAB_PASSWORD@192.168.10.36/组名/$REPO"
# 推送所有内容到 GitLab
echo "正在推送仓库 $REPO 到 GitLab"
git push --mirror || echo "推送仓库 $REPO 到 GitLab 失败"
# 返回上级目录
cd ..
done
echo "所有仓库迁移完成!"
注意:需要先在远程地址建立新仓库才能将就地址的代码迁移至新仓库。
更多推荐
所有评论(0)