如何从gitlab迁移到github

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从gitlab迁移到github相关的知识,希望对你有一定的参考价值。

参考技术A Python 已经决定迁移到 GitHub,虽然有人公开说反对迁移到 GitHub,但是会在一定程度上使用 GitHub,而且几位核心的开发者也倾向于选择 GitHub。Python 在很久之前为了改进其开发工作流就已经展开了相关的讨论, 这个决定基于三个因素:

剪切新版本时如何触发 GitLab CI/CD 管道?

【中文标题】剪切新版本时如何触发 GitLab CI/CD 管道?【英文标题】:How to trigger a GitLab CI/CD Pipeline when cutting a new Release? 【发布时间】:2021-08-15 04:52:46 【问题描述】:

我正在将我的项目从 GitHub.com 迁移到自托管的 GitLab CE 实例。我之前设置了一个 GitHub Actions 管道,以便在从标签中删除新版本时发布应用程序。也就是说,当我去github.com/<organization>/<project>/tags 并编辑标签以发布版本时,以下*-workflow.yml 脚本sn-p 将触发我想要的操作:

on:
  release:
    types: [created]

GitLab CI/CD (.gitlab-ci.yml) 上的等价物是什么?我搜索了整个the GitLab docs 以及 gitlab.reddit.com 和 Stack Overflow 等辅助网站,但找不到任何方法。需要明确的是,在 GitLab 中将标签转换为真实版本的步骤如下:

    转到<GitLab CE>/<group>/<project>/-/releases/new “创建自”列表中的任何标签 填写详细信息 点击“创建发布”按钮

我希望 GitLab 在上述第 4 步后立即执行我的script

【问题讨论】:

【参考方案1】:

我不确定 Gitlab 是否有类似的功能,或者至少我在文档中找不到任何内容。

一种解决方法是在创建标签后在 CI 管道中自动创建发布。因此,无论何时从特定分支创建标签,CI 管道都会创建一个发布。您还可以使用$CI_COMMIT_TAG 值控制Release 的创建。

release:
  stage: release
  script:
    - echo "Create release when a tag is created"
  rules:
    - if: '$CI_COMMIT_TAG' # Any tag is created
    - if: '$CI_COMMIT_TAG =~ /^v\d+\.\d+\.\d+\-release/' # A specific tag with 'vX.Y.Z-release' pattern is created
  release:
    name: 'My awesome release'
    tag_name: '$CI_COMMIT_TAG'

有关使用 CI 管道创建新 Release 的更多信息,您可以从文档中阅读此页面:

Create release from GitLab CI

【讨论】:

感谢您的参与,Reza。这是一个很好的解决方法,在需要发布 每个 匹配标签的情况下非常理想。您的建议需要先发制人地知道哪个版本将用于生产(例如,包括-release),而不是在一些更多的手动测试或利益相关者批准之后“提升”现有标签的能力,例如。我将不回答这个问题,因为理想情况下,我想在创建上述版本时触发构建。希望有另一种方式。 ? 是的,你是对的。但是,我认为如果您找不到任何其他解决方案,您仍然可以考虑使用经过良好测试并准备发布的特定发布标签。然后您可以使用此解决方案触发管道并创建一个新的Release 如果您没有找到任何其他解决方案,或者我的回答对您有帮助,请接受或点赞回答:) 这对我提高声誉有很大帮助。 嗨 Reza,我赞成你的回答,因为我知道你已经尽力了,我真诚地感谢你的回应。我暂时不回答它,以向其他人表明我仍在寻找 GitLab 上的正确功能(如果存在)。

以上是关于如何从gitlab迁移到github的主要内容,如果未能解决你的问题,请参考以下文章

是否可以将 Gitlab 版本迁移到 Github 存储库?

从 bitbucket 迁移到 GitLab

从 Jenkins Ci 服务迁移到 gitlab-ci.yml

gitlab 从古老的 bitnami 版本 迁移到官方最新版本

gitlab服务器迁移

GitLab服务器迁移