首页 > 解决方案 > 将更新从 azure 推送到 github

问题描述

我是 azure devops 的新手,并且面临在 azure devops 和 github 之间集成的问题,也许你可以帮忙。我的问题是如何将在 azure devop 存储库上完成的提交推送到位于我的 github 帐户上的相应存储库?

例如:1)我从 github 私有 repo 导入一个文件 abc.py 2)我在 azure devops repo 中对 abc.py 进行更改并提交它。3)现在,我在 azure repo 的 master 分支上对 abc.py 所做的所有提交都应该推送到我之前导入的私有 github repo 中 master 分支的 abc.py。

谢谢你的帮助。

标签: githubazure-devopsazure-cli

解决方案


您可以尝试将命令行脚本任务添加到构建管道的代理作业中,然后通过 git 命令将更新推送到 github。

任务中添加的命令如下:

    git clone https://github.com/XXX/XXX.git
    git config --global user.name "XXX"
    git checkout master
    git add .
    git commit -m "abc"
    git push https://%gt%@github.com/xxx/xxx.git

这是我的示例: 在此处输入图像描述

注意:您需要在推送 url 中提供您的 github PAT,如下例所示:

git push https://{yourPAT}@github.com/xxx/yyy.git

为了保护您的 PAT,您可以使用安全变量,例如 gitHubPat,将变量类型更改为机密。 在此处输入图像描述

然后你可以添加一个环境变量,在我的例子中:gt。然后将其值设置为 $(gitHubPat)。在命令行任务中,使用 double %% 获取环境变量“gt”的值。

如果您需要将 azure devops repo 中的更新实时推送到 github repo,您​​可以在 Build Triggers中设置并选中Enable Continuous integration选项。因此,如果您的 master 分支发生更改,它将触发 ci build,您的更新将是推送到 github 仓库。 在此处输入图像描述

希望这可以帮助。


推荐阅读