144

closes #1またはfixes #1をコミットメッセージに入れることで問題を解決できることを私は知っています。同じコミット メッセージで複数の問題をクローズする最善の方法は何ですか?

また、コミットメッセージから問題へのリンクを作成しないのfixesはなく、使用しているように見えますが、問題を閉じます。どうしたの?closes

4

5 に答える 5

199

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.

以下は以前は機能していましたが、現在は#2 と #3のみを参照しています。

Closes #1, #2, #3

于 2010-08-23T20:13:40.513 に答える
44

回答とその回答へのコメントには、次の形式が記載されています。

#1 を閉じ、#2 を閉じ、#3 を閉じます。実際のコミット メッセージ

参加する価値のあるプロジェクトがあり、誰かがそのようなコミット メッセージを含むプル リクエストを送信した場合、コードがどんなに美しくても、プル リクエストを拒否します。

これは単に私の個人的な好みの問題であり、Git 履歴の要約を混乱させるコンパクトなコミット メッセージに慣れている人々によって徹底的に打ち負かされる可能性がありますが、私はむしろ次の形式のコミット メッセージを見たいと思っています。

行った変更の概要。

次のバグを修正しました:
* エラー ローダーの修正、#1 の修正
* 無効なポインタを返した、#2 の修正
* 新しいグラフィックスを GUI 要素に適用、#3 を閉じる

彼は、複数の問題を解決する最善の方法を尋ねました。

また、メッセージを含むコミットをリポジトリの現在のデフォルト ブランチ以外のブランチにプッシュした場合、課題は参照されるだけであることに注意してください。コミットをメイン ブランチにプッシュすると、Issue がクローズされます。参照: GitHub の問題番号へのリンクが機能していませんか?

于 2012-06-26T07:53:57.527 に答える
12

2013 年 1 月以降、「コミット メッセージによる問題の解決」が変更されたことに注意してください。

Fixes #33これで、コミット メッセージに" " を入力すると、コミットがデフォルト ブランチにマージされると (通常は) 、課題 33 のみがクローズされますmaster

これは、課題のオープン/クローズ ステータスがデフォルト ブランチにマップされることを意味するため、非常に便利です。
デフォルトのブランチでバグが修正されていない場合、問題は未解決のままになります。
修正を含むコミットがデフォルトのブランチにマージされると、課題は自動的にクローズされます。

これらのキーワードのいずれかを使用して、コミット メッセージ経由で課題をクローズできます。

close, closes, closed, fixes, fixed

「別のブランチで GitHub の問題をクローズする」という質問に示されているように、これは最初は混乱を招きます。

于 2013-04-05T06:42:10.307 に答える