在 VSTS CI 中添加自动 git 合并步骤
Add automatic git merge step in VSTS CI
-
continuous-integration
-
branching-and-merging
-
pull-request
-
azure-pipelines-build-task
-
azure-pipelines
我想在测试通过后将我的 dmz 分支合并到 master 分支。我找不到合并步骤。
如 DMZ 流程所述,您应该使用 拉取请求 将 dmz
分支合并到 master
。为了合并和构建可以自动执行,您可以使用 web hooks.
In order to preserve the pristine and reliable nature of master, we're
going to impose some constraints. No one can ever put code directly
into master. Everyone has to work on feature branches, and those
feature branches can only be brought into master by way of the pull
request. Pull requests will be built automatically and their build
status checked before merge into master, thus ensuring that code
coming into master has always a) passed automated checks like
compilation and testing, and b) passed code review. Pull requests
should be used for everything, from tiny whitespace changes to
sweeping refactorings. A healthy team opens many, many pull requests
every day.
流程应该是:创建一个 pull request 将 dmz
合并到 master
-> 自动构建 dmz
分支(由 web hook 触发) -> 如果构建成功(通过另一个网络挂钩检测)->将 dmz
合并到 master
并在 master
分支上构建队列。
先决条件:
- 两个 Web 挂钩用于检测
dmz
分支上的拉取请求创建和构建成功。
- 两个构建定义分别构建
dmz
和 master
分支。
- 根据您的请求开发的网站,在
dmz
构建成功后接收消息,然后将 dmz
合并到 master
并在 master
分支上排队另一个构建。
用于检测拉取请求的 Web 挂钩已创建: 在 VSTS 项目网页中 -> 服务挂钩 -> 创建订阅 -> Web 挂钩 -> 下一步 -> select 为触发事件创建的拉取请求合并提交 -> select 你的回购 -> select master
作为目标分支 -> 下一步 -> URL 用于你的网站 -> 完成。
Web 钩子检测构建成功 在 dmz
分支上 -> 创建另一个 Web 钩子 -> select 构建完成触发此事件 -> select 构建 dmz
分支的构建定义 -> select 作为构建状态成功 -> 下一步 -> 使用您的网站 URL 接收消息。
网站功能应包括:
- 收到来自 dmz 分支构建成功的消息
- 然后complete pull request to merge
dmz
branch into master
and queue build for master
branch.
如果不想使用Pull Request,可以在构建时调用git命令合并并推送到maser分支。
- 在下面添加命令行任务来测试任务
- 工具:git;参数:push origin HEAD:master;工作文件夹:$(build.sourcesdirectory)
continuous-integration
branching-and-merging
pull-request
azure-pipelines-build-task
azure-pipelines
我想在测试通过后将我的 dmz 分支合并到 master 分支。我找不到合并步骤。
如 DMZ 流程所述,您应该使用 拉取请求 将 dmz
分支合并到 master
。为了合并和构建可以自动执行,您可以使用 web hooks.
In order to preserve the pristine and reliable nature of master, we're going to impose some constraints. No one can ever put code directly into master. Everyone has to work on feature branches, and those feature branches can only be brought into master by way of the pull request. Pull requests will be built automatically and their build status checked before merge into master, thus ensuring that code coming into master has always a) passed automated checks like compilation and testing, and b) passed code review. Pull requests should be used for everything, from tiny whitespace changes to sweeping refactorings. A healthy team opens many, many pull requests every day.
流程应该是:创建一个 pull request 将 dmz
合并到 master
-> 自动构建 dmz
分支(由 web hook 触发) -> 如果构建成功(通过另一个网络挂钩检测)->将 dmz
合并到 master
并在 master
分支上构建队列。
先决条件:
- 两个 Web 挂钩用于检测
dmz
分支上的拉取请求创建和构建成功。 - 两个构建定义分别构建
dmz
和master
分支。 - 根据您的请求开发的网站,在
dmz
构建成功后接收消息,然后将dmz
合并到master
并在master
分支上排队另一个构建。
用于检测拉取请求的 Web 挂钩已创建: 在 VSTS 项目网页中 -> 服务挂钩 -> 创建订阅 -> Web 挂钩 -> 下一步 -> select 为触发事件创建的拉取请求合并提交 -> select 你的回购 -> select master
作为目标分支 -> 下一步 -> URL 用于你的网站 -> 完成。
Web 钩子检测构建成功 在 dmz
分支上 -> 创建另一个 Web 钩子 -> select 构建完成触发此事件 -> select 构建 dmz
分支的构建定义 -> select 作为构建状态成功 -> 下一步 -> 使用您的网站 URL 接收消息。
网站功能应包括:
- 收到来自 dmz 分支构建成功的消息
- 然后complete pull request to merge
dmz
branchinto master
and queue build formaster
branch.
如果不想使用Pull Request,可以在构建时调用git命令合并并推送到maser分支。
- 在下面添加命令行任务来测试任务
- 工具:git;参数:push origin HEAD:master;工作文件夹:$(build.sourcesdirectory)