1、在新建project时候选择导入project,选择通过url导入,输入原gitlab project的地址,输入有权限的账号名和密码,就可以了。
2、手动导入
clone原project
git clone 原project地址
cd your_project.git/
从远处仓库获取所有分支
git branch -r | grep -v '\->' | while read remote; do git branch --track "${remote#origin/}" "$remote"; done
--删除原来origin
git remote rm origin
--在gitlab上创建项目
git remote add origin git@gitlab_host:admin/your_project.git
--将本地项目推送到远程gitlab项目上
git push -u origin --all
--推送tags
git push origin --tags
然后再将其他用户添加到这个project中,看一下,历史记录都在。
任务完成。
3、脚本自动导入文章来源:https://www.toymoban.com/news/detail-494632.html
需要安装expect文章来源地址https://www.toymoban.com/news/detail-494632.html
#!/bin/bash
#同步原gitlab xx组下的project到新的gitlab
#author menard
cd /root/project
project=('project1' 'project2' 'project3')
for i in ${project[*]}
do
/usr/bin/expect <<EOF
set timeout -1
spawn git clone http://172.16.9.66/DOC_NBO/$i.git
expect {
"*Username*" {send "code_ops\r"}
}
expect {
"Password*" {send "password\r"}
}
expect eof
EOF
sleep 3
cd $i
git remote rm origin
git remote add origin http://gitlab-code.xxx.com.cn/doc/$i.git
/usr/bin/expect <<EOF
set timeout -1
spawn git push -u origin --all
expect {
"*Username*" {send "code_ops\r"}
}
expect {
"Password*" {send "password\r"}
}
expect eof
EOF
sleep 3
/usr/bin/expect <<EOF
set timeout -1
spawn git push origin --tags
expect {
"*Username*" {send "code_ops\r"}
}
expect {
"Password*" {send "password\r"}
}
expect eof
EOF
cd /root/project
sleep 1
done
到了这里,关于gitlab导入project的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!