使用提交消息关闭Github中的多个问题

使用提交消息关闭Github中的多个问题,github,issue-tracking,Github,Issue Tracking,我知道您可以通过将closes#1或fixes#1放在提交消息中来解决问题。在同一个提交消息中关闭多个问题的最佳方法是什么 此外,使用修复而不是关闭似乎不会创建从提交消息到问题的链接,但它确实关闭了问题。怎么了?代码>关闭1,关闭2,关闭3;提交消息的其余部分。 closes子句可以位于消息中的任何位置,并且fixes是有效的同义词: This fixes a memory leak in foo() that closes #4, also fixes #5 which is a duplic

我知道您可以通过将
closes#1
fixes#1
放在提交消息中来解决问题。在同一个提交消息中关闭多个问题的最佳方法是什么

此外,使用
修复
而不是
关闭
似乎不会创建从提交消息到问题的链接,但它确实关闭了问题。怎么了?

代码>关闭1,关闭2,关闭3;提交消息的其余部分。

closes
子句可以位于消息中的任何位置,并且
fixes
是有效的同义词:

This fixes a memory leak in foo() that closes #4,
also fixes #5 which is a duplicate.

以下内容过去是有效的,但现在只涉及问题2和问题3


关闭#1、#2、#3

答案和对该答案的评论提及以下格式:

关闭#1、关闭#2、关闭#3;实际提交消息

如果我有一个值得参与的项目,并且有人发送了带有此类提交消息的拉取请求,那么无论代码有多漂亮,我都会拒绝拉取

这可能只是我个人偏好的问题,最终会被用来压缩提交消息的人打得落花流水,这些消息会把Git历史摘要弄得乱七八糟,但我更希望看到提交消息的格式是:

所做更改的摘要

修复了以下错误:
*修改错误加载程序,修复#1
*返回了一个非标度指针,修复了#2
*将新图形应用于gui元素,关闭#3

他要求找到解决多个问题的最佳方法

还请注意,如果将提交和消息一起推送到存储库当前默认分支以外的任何其他分支,则只会引用问题。将提交推送到主分支将关闭问题。请参阅:

注意,由于“通过提交消息关闭问题”已更改:

现在,当您在提交消息中输入“
Fixes#33
”时,只有在提交合并到默认分支(通常是
master
)后,问题33才会关闭

这非常有用,因为这意味着问题的打开/关闭状态将映射到您的默认分支机构。
如果默认分支中的错误未修复,则问题仍将存在。
一旦使用修复程序提交合并到默认分支中,问题将自动关闭

您可以使用以下任一关键字通过提交消息关闭问题:

如问题“”所示,这首先会引起一些混淆。

是GitHub提供的一份文档,介绍了如何关闭问题、标记以及如何关闭多个问题

要回答您的问题,GitHub的答案是:

要结束多个问题,请在每期问题前添加前言 使用上述关键字之一进行引用。您必须使用关键字 在每个问题之前,您都要引用关键字以使其生效

例如,这将关闭#34、关闭#23和关闭 示例#用户/示例#回购#42将在 相同的存储库,并在“示例用户/示例回购”中发布#42 存储库


这里是Github self a文档:


这似乎对我不起作用,它只关闭列表中的第一项,而不关闭其他项。自从这篇文章以来,语法有没有改变?我已经在谷歌上搜索过了,但在这方面似乎没有什么帮助。我同意。修复程序#1和#2可以引用这两个。。。但是只有关闭1。@waldo我认为在我写它的时候,它起作用了——现在,怎么样
关闭1,关闭2,关闭3
?冗长和冗余,是的,但可能有效?是的,“修复1-修复2-实际提交消息”。有效且有一定意义(如果冗长)-即我清楚地关闭并引用(不关闭)单个提交消息中的多个不同问题。知道他们为什么更改
关闭1、#2、#3的行为吗?我觉得写10个
结束
加上要结束的问题的数量而不是一个结束以及之后的所有数字是荒谬的-/只是试过你的方法。老实说,我真的很喜欢这个!看见
close, closes, closed, fixes, fixed
Resolves #10, resolves #123, resolves octo-org/octo-repo#100