首页 > 解决方案 > 如何将 Azure Devops Repo 与 Gitlab 同步

问题描述

我们正在使用 Azure Devops 存储库来满足我们的一些开发需求。我们还使用 gitlab 作为我们的主要源代码控制。我想让我的 gitlab 存储库与 Azure 存储库保持同步。也就是说,只要在 Azure Repo 中提交了一些更改,它就会自动流向 Gitlab。我们正在使用 GitLab CE,因此镜像 Pull 选项不可用

标签: gitazureazure-devopsgitlab

解决方案


我认为您可以尝试在构建管道中使用命令行脚本任务,然后通过 git 命令将更新推送到 gitlab,如下所示。

git clone https://gitlab.com/{account name}/{project name}.git
git config --global user.name "XXX"
git checkout master
git add .
git commit -m "abc"
git push https://%pt%@gitlab.com/xxx/xxx.git

首先,我将 gitlab token in 的值恢复到变量中,例如GitlabPAT并将其设置为秘密。然后添加一个环境变量:pt,将此环境变量值设置为 $(GitlabPAT)。 在此处输入图像描述

在命令行任务中,使用 double %%获取环境变量pt的值。

另外,为了实时将 azure devops repo 中的提交推送到 gitlab repo,您​​可以将 Build Triggers 设置为Enable Continuous integration选项。因此,一旦 master 分支发生更改,它将触发 CI 构建,并且您的更新将是使用这些 git 命令推送到 gitlab 存储库。

在此处输入图像描述


推荐阅读