我在BitBucket中有多个存储库。从BitBucket迁移到GitLab最合适的方法是什么?
举个例子,我在我的系统上维护一个名为“SSSP”的仓库。我应该将该存储库从BitBucket彻底迁移到GitLab的步骤是什么?
答案 0 :(得分:4)
我认为通过网络界面使用导入功能比克隆和推送每个回购更简单。
GitLab Documentation - Import your project from Bitbucket to GitLab
此外,在这种情况下,Gitlab可以导入问题。
答案 1 :(得分:3)
最好使用中间本地bare repo来复制一个远程仓库并将其推送到新的远程仓库。
假设你准备好一个空的gitlab repo:
git clone –bare git@bitbucket.com:old/old_repo.git
cd old_repo
git remote add new-origin git@gitlab.com:new/new_repo.git
git push –mirror new-origin
cd ..
git clone git@gitlab.com:new/new_repo.git repo
cd repo
# start working
请注意,这不包括维基(which you need to clone as well,如果您有某些内容)或问题。
答案 2 :(得分:3)
我今天遇到了这个问题,上面的答案中的链接已过时(404 Not Found)。最后我解决了这个问题,这就是我如何制作它并希望它对需要它的人有所帮助
第1步:Bitbucket
登录您的bitbucket帐户
进入Bitbucket设置
填写详细信息:
授予权限
保存更改
第2步:GitLab
使用vim以root身份打开gitlab.rb文件(您可以选择您喜欢的编辑器)
sudo vim /et/gitlab/gitlab.rb
初始化OmniAuth配置以进行初始设置:
gitlab_rails['omniauth_enabled'] = true
gitlab_rails['omniauth_allow_single_sign_on'] = ['saml', 'twitter']
gitlab_rails['omniauth_auto_link_ldap_user'] = true
gitlab_rails['omniauth_block_auto_created_users'] = true
添加Bitbucket提供程序配置(我们生成的密钥和密码):
gitlab_rails['omniauth_providers'] = [
{
"name" => "bitbucket",
"app_id" => "BITBUCKET_APP_KEY",
"app_secret" => "BITBUCKET_APP_SECRET",
"url" => "https://bitbucket.org/"
}
]
将更改保存到gitlab.rb文件
gitlab-ctl stop
,gitlab-ctl reconfigure
和gitlab-ctl start
以重新配置更改并重新启动gitlab。答案 3 :(得分:0)
didDeselectRowAt
将在本地计算机上从bitbucket创建克隆(需要从Bitbucket克隆数据的适当权限)
1.git -c http.sslVerify=false clone https://user@bitbkt:8443/scm/config.git
克隆后进入基础文件夹
2.cd config
在GitLab(xyz)上创建了特定组,并在其中创建了配置项目。
3.git remote add sxm https://test.com/gitlab/xyz/config.git
将在GL Gitlab上推送BitBucket代码。
答案 4 :(得分:0)
如果您使用bitbucket-server和gitlab-ce。
首先,打开gitlab-ce管理界面,创建一个新组bitbucket-import
。后记会在该组中创建一个新项目,以便应创建文件夹/var/opt/gitlab/data/repositories/bitbucket-import
。
然后,将裸存储库从bitbucket-server数据文件夹复制到gitlab-ce数据文件夹:
cp -r /var/atlassian/application-data/stash/shared/data/repositories/* /var/opt/gitlab/data/repositories/bitbucket-import
将所有文件夹从{folder}重命名为{folder} .git。 Gitlab-ce需要以.git结尾才能导入存储库。
/var/opt/gitlab/data/repositories/bitbucket-import/
rename -n s/$/.git/ * # Dry run
rename s/$/.git/ * # Renaming
导入存储库:
chown -R git:git /var/opt/gitlab/data/repositories/bitbucket-import/
gitlab-rake gitlab:import:repos['/var/opt/gitlab/data/repositories/'] RAILS_ENV=production
现在,您可以在gitlab管理界面中看到通过bitbucket ID表示的导入git存储库。这是查找真名的方法:
http://your-bitbucket-stash-server/rest/api/1.0/repos?limit=1000&start=0
转到gitlab-ce项目设置->“高级”,然后重命名您的存储库。
亲切的问候。