【发布时间】:2011-04-02 14:59:37
【问题描述】:
我知道您可以通过在提交消息中输入 closes #1 或 fixes #1 来关闭问题。关闭同一提交消息中的多个问题的最佳方法是什么?
此外,使用fixes 而不是closes 似乎不会创建从提交消息到问题的链接,但它确实关闭了问题。这是怎么回事?
【问题讨论】:
标签: github issue-tracking
我知道您可以通过在提交消息中输入 closes #1 或 fixes #1 来关闭问题。关闭同一提交消息中的多个问题的最佳方法是什么?
此外,使用fixes 而不是closes 似乎不会创建从提交消息到问题的链接,但它确实关闭了问题。这是怎么回事?
【问题讨论】:
标签: github issue-tracking
Closes #1, closes #2, closes #3; rest of commit message.
closes 子句可以在消息中的任何位置,fixes 是一个有效的同义词:
This fixes a memory leak in foo() that closes #4,
also fixes #5 which is a duplicate.
以下曾经可以工作,但现在只有references发布#2和#3。
Closes #1, #2, #3
【讨论】:
Closes #1, closes #2, closes #3 怎么样?是的,冗长而多余,但也许它有效?
Closes #1, #2, #3 的行为吗?我觉得写 10 closes 加上要关闭的问题的数量而不是单个关闭以及之后的所有数字是荒谬的。 :-/
答案和对该答案的评论提到以下格式:
关闭#1,关闭#2,关闭#3;实际提交信息
如果我有一个值得参与的项目,并且有人发送了包含此类提交消息的拉取请求,那么无论代码多么漂亮,我都会拒绝拉取。
这可能只是我个人喜好的问题,并且最终会被那些习惯于压缩提交消息的人打败,这些提交消息会使 Git 历史摘要变得混乱,但我更愿意看到格式如下的提交消息:
所做更改的摘要。
修复了以下错误:
* 修改错误加载器,修复 #1
* 返回一个过时的指针,修复 #2
* 将新图形应用到 gui 元素,关闭 #3
他要求以最佳方式关闭多个问题。
另外请注意,如果您将带有消息的提交推送到存储库当前默认分支以外的任何其他分支,则只会引用问题。将提交推送到主分支将关闭问题。见:Link to GitHub issue number not working?
【讨论】:
请注意,自 January 2013 以来,“通过提交消息关闭问题”已更改:
现在,当您在提交消息中输入“Fixes #33”时,只有在提交合并到您的默认分支(通常为 master)后,第 33 期才会关闭。
这非常有用,因为这意味着问题的打开/关闭状态将映射到您的默认分支。
如果您的默认分支中未修复该错误,则该问题将保持打开状态。
一旦带有修复的提交合并到您的默认分支中,问题将自动关闭。您可以使用以下任何关键字通过提交消息关闭问题:
close, closes, closed, fixes, fixed
如问题“Closing a GitHub Issue while on a different branch”所示,这首先会引起一些混乱。
【讨论】:
这里来自 Github 自己的文档:Linking a pull request to an issue
Resolves #10, resolves #123, resolves octo-org/octo-repo#100
【讨论】:
"Closing issues using keywords" 是来自 GitHub 的文档,描述了如何关闭问题、标签以及如何关闭多个问题。
要回答您的问题,GitHub 的答案是:
要关闭多个问题,请为每个问题添加前言 使用上述关键字之一进行引用。您必须使用关键字 在您为关键字工作而引用的每个问题之前。
例如,This 关闭 #34,关闭 #23,然后关闭 example_user/example_repo#42 将关闭问题 #34 和 #23 相同的存储库,并在“example_user/example_repo”中发布 #42 存储库。
【讨论】: