如何在提交代码时,与 GitHub issus 关联?

Qiang 发布在技术 1

友情提示,以下回答由 ChatGPT 提供,并由本人验证有效。

要在提交代码时与 issue 关联,可以使用以下命令格式:

git commit -m "commit message" -m "关联的 issue: #issue_number"

其中,commit message 是本次提交的描述信息,issue_number 是你要关联的 issue 编号。注意这里 # 符号后面要紧跟 issue 编号,表示与该编号对应的 issue 相关联。

例如,假设你要提交一次代码,同时关联到 issue #123,可以使用如下命令:

git commit -m "fix a bug" -m "关联的 issue: #123"

提交代码后,当其他人查看该 commit 时,就可以在 commit 的描述信息中看到与之关联的 issue 编号。

另外,如果你在提交代码后才想与 issue 关联,可以使用以下命令:

git commit --amend -m "commit message" -m "关联的 issue: #issue_number"

这个命令会将你的本地提交修改为一个新的提交,新提交中包含你所关联的 issue 编号。需要注意的是,如果你已经将本地提交推送到了远程仓库,这个命令可能会破坏其他人对该提交的依赖性。

并且可以在提交代码的同时,添加提交信息到 issue 的评论中并关闭该 issue。GitHub 提供了一种特殊的关键词语法,可以在提交信息中引用 issue,从而自动将提交信息添加到 issue 的评论中,甚至可以在提交信息中添加关闭 issue 的命令。

具体来说,如果你要将提交信息添加到 issue 的评论中,可以在提交信息中使用 关键词 #issue_number 的格式来引用 issue。例如,假设你要提交一次代码并引用 issue #123,可以使用如下命令:

git commit -m "fix a bug, fix #123"

当你使用这种格式提交代码时,GitHub 会自动将提交信息添加到 issue #123 的评论中。

如果你要关闭 issue,可以在提交信息中添加 closed #issue_numberfixes #issue_number 的关键词。例如,如果你想关闭 issue #123,可以使用如下命令:

git commit -m "fix a bug, fixes #123"

这个命令会将 issue #123 的状态自动更新为已关闭。注意,使用 fixes 关键词会将 issue #123 的状态更新为已关闭,并且会将这个提交信息显示在该 issue 的关闭日志中;而使用 closed 关键词只会将 issue #123 的状态更新为已关闭,但不会将该提交信息显示在关闭日志中。

需要注意的是,这些关键词语法只在 GitHub 上有效,如果你使用其他 Git 仓库托管服务,可能需要使用不同的语法或工具来实现相同的功能。

TOP
前往 GitHub Discussion 评论