我想为我的 Github 存储库创建自定义拉取请求模板(我公司的内部版本,而不是 Github.com 上的版本),所以我按照此 link 上的说明进行操作。我按照以下步骤操作:
创建新的 PR 没有显示我创建的模板。创建新问题模板的类似步骤可以正常工作,但 PR 模板不起作用。我想在 PULL_REQUEST_TEMPLATE 文件夹中添加不同的模板,以便创建多个拉取请求模板,例如功能模板、错误修复模板等。我的 PR 模板 markdown 包含以下内容:
---
name: Design Review
about: Design Review issue template
---
# PR Change Description
This PR is to add a new vendor type.
您必须在存储库的默认分支上创建模板。在其他分支创建的模板无法供协作者使用。
注意: 如果您的 PullRequest 模板未应用于您创建的每个新 PR,则主要可能是由于以下原因造成的
您可以将拉取请求模板存储在存储库的可见根目录、docs 文件夹或隐藏的 .github 目录中。拉取请求模板文件名不区分大小写,并且可以具有扩展名,例如 .md 或 .txt。
GitHub 默认会加载文件
.github/PULL_REQUEST_TEMPLATE.md
作为 PR 模板。
但是,可以有多个模板并使用 url 上的查询字符串引用它们,如下所示:
https://github.com/octo-org/octo-repo/compare/master...pull-request-test?template=pr_template.md
这将从
pr_template.md
加载模板 .github/PULL_REQUEST_TEMPLATE/pr_template.md
,其中 master
是目标分支,pull-request-test
是要合并的分支。
同样的问题
https://github.com/octo-org/octo-repo/issues/new?template=issue_template.md
文档在这一点上写得不是很好,但是这里列出了 PR 创建表单的完整参数集:https://help.github.com/en/github/managing-your-work-on- github/about-automation-for-issues-and-pull-requests-with-query-parameters,但对于这个特定示例,它甚至有错误的网址
对于问题,现在有一个通过 yaml 配置的模板选择器,因此您可以在不使用查询字符串的情况下在模板之间进行选择,也许类似的东西稍后会出现在 PR 中 https://help.github.com/en/github/building-a-strong-community/configuring-issue-templates-for-your-repository
我尝试将我的
pull_request_template.md
文件添加到 .github/PULL_REQUEST_TEMPLATE/pull_request_template.md
路径
但它不起作用,然后我将文件移动到
.github/pull_request_template.md
路径,即删除了子目录 PULL_REQUEST_TEMPLATE
并成功了。
因此,如果您没有多个模板,则无需创建
PULL_REQUEST_TEMPLATE
子目录,并确保在默认分支(主要是 pull_request_template.md
)中创建 master
。
您只能在
.github
文件夹中创建文件,而不是 PULL_REQUEST_TEMPLATE
文件夹中。
将您的
.md
文件移动到 .github/PULL_REQUEST_TEMPLATE.md
应该可以。
就我而言,文件名是
.github/pull_request_template.md
,如 GitHub 文档 中所述,直到我将其重命名为 .github/PULL_REQUEST_TEMPLATE.md
后它才起作用。
附注在此更改之前,我正在不同的文件夹中移动文件,因此可能有东西卡在 GitHub 缓存等中。
您可以检查文件真的是否在您的
\.github
目录中。
就我而言,vscode “视觉上折叠”到 \.github
中,所以我不小心在 \.github\workflows
中创建了该文件。将其移至一个目录,因此它真的位于\.github\workflows
中,现在它按预期显示。可能很明显,但我花了大约 10 分钟才发现。