代码库导入/迁移问题合集

本文汇总代码库导入相关问题和解决方法。

自建Gitlab导入时告知网络不通怎么处理?

Q:在进行三方代码库导入时,导入失败且提示“无法连通,请确认代码库公网可访问”应该怎么处理?

A:有时候,运维人员在配置自建Gitlab时,限制了使用内网地址,关闭了公网拉取的入口,此时每个仓库的下载地址将显示为内网地址,如:

高的 - 2024-11-13T153840

针对内网托管服务不通公网的情况,有两种处理方案。

方案一【推荐】:使用云效官方提供的本地代码库导入工具,无须开放自建Gitlab克隆地址为公网可访问,具体操作指导参见本地代码迁移工具

方案二:开放代码库公网克隆地址,让云效能够拉取到代码库。

以下示例没有购买域名,因此使用frp的端口来代理本地Gitlab的Web端口:

  1. 更改 gitlab.rb 的 external_url 为公网地址:

    grep ^external_url /mnt/gitlab/etc/gitlab.rb

    external_url 'http://47.103.xx.x'

  2. 更改如下host和port参数:

    $ cat /mnt/gitlab/data/gitlab-rails/etc/gitlab.yml  
    
    ## GitLab settings  
    
    gitlab:    ## Web server settings (note: host is the FQDN, do not include http://)    
    
    host: 47.103.xx.x    #公网地址    
    
    port: 20113         #这个是frp的映射地址    
    
    https: false
  3. 在frpc.ini的配置文件中,把地址映射出去:

    [test-web]   
    
    type = tcp   
    
    local_ip = 127.0.0.1   
    
    local_port = 20113   
    
    remote_port = 20113
  4. 启动docker的时候,全部使用映射地址:

    docker run -itd --name gitlab  -p 8443:443  -p 20113:80 -p 20112:22  --restart unless-stopped -v /mnt/gitlab/etc:/etc/gitlab -v /mnt/gitlab/log:/var/log/gitlab -v /mnt/gitlab/data:/var/opt/gitlab  beginor/gitlab-ce:11.0.1-ce.0
  5. 登录Gitlab查看Clone with HTTP的地址已更改为公网地址。

如何将代码库从云效当前企业导入到另一个云效企业?

同类问题:如何将代码库导入到其他云效账号下?

概念说明:云效按企业隔离资源,企业下的代码库都是属于企业的资产,因此不存在导入到某个账号下的概念。您可以通过页面 URL 导入的方式,将云效A企业的代码库,导入到云效B企业中去。

导入操作说明

进入B企业的代码库首页,点击右上角导入代码库,进入导入视图,选择URL 导入

高的 - 2024-11-18T100201

填写A企业下源代码库地址,填写有A企业源代码库克隆权限的云效账号的克隆账号/密码,或者克隆账号/个人访问令牌(Access Token)。

克隆账号可在对应账号中,选择个人设置 > HTTPS 密码查看:

image

image