コミットメッセージでGithubの複数の問題を閉じる


112

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

また、使用することが表示されますfixesではなく、することはcloses問題にコミットメッセージからのリンクを作成しませんが、それはありません近い問題を。どうしたの?


回答:


160

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


1
これは私にはうまくいかないようで、リストの最初のアイテムだけを閉じ、他のアイテムは閉じません。この投稿以降、構文は変更されましたか?私はそれをグーグルで調べました、しかしこれについてそこに多くの助けがあるようには思われません。
Mark Bell

1
同意した。修正#1、#2は両方を参照するように機能しますが、#1のみを閉じます。
waldo '30

@waldoこれは私が書いたときにうまくいったと思います-最近では、どうCloses #1, closes #2, closes #3ですか?冗長で冗長です、はい、たぶんそれはうまくいきますか?
Jakob Borg、

うん、「修正#1-修正#2-実際のコミットメッセージ。」機能し、ある程度の意味があります(詳細な場合)。つまり、1つのコミットメッセージから複数の異なる問題を明確に閉じて(閉じずに)参照します。
ワルド

2
彼らがなぜ行動を変えたのCloses #1, #2, #3か?私は、10にcloses加えて、1つのクローズではなく、クローズされる問題の番号とその後のすべての番号を書くのはばかげています。:-/
rbaleksandar

38

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

#1を閉じる、#2を閉じる、#3を閉じる; 実際のコミットメッセージ

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

これは私の個人的な好みの問題であり、Git履歴の要約を乱雑にするコミットメッセージを圧縮するために使用される人々によってまさに最終的に打たれる可能性がありますが、私はむしろ次の形式のコミットメッセージを見たいと思います。

加えられた変更の要約。

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

彼は複数の問題を解決する最良の方法を求めました。

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


ちょうどあなたの方法を試してみました。正直に言うと、これが本当に好きです!
Billy Coover、2012年

9

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

これFixes #33で、コミットメッセージに「」を入力すると、コミットがデフォルトのブランチにマージされると(通常master問題33が閉じられます

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

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

close, closes, closed, fixes, fixed

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


1

「キーワードを使用して問題を解決する」は、GitHubのドキュメントで、問題、タグ、および複数の問題を解決する方法を説明しています。

あなたの質問に答えるには、GitHubからの答えは次のとおりです。

複数の問題を解決する

複数の問題を解決するには、各問題の参照の前に上記のキーワードのいずれかを付けます。キーワードを機能させるには、参照する各号の前にキーワードを使用する必要があります。

たとえば、これは#34を閉じ、#23を閉じ、example_user / example_repo#42を閉じると、同じリポジトリの課題#34と#23が閉じ、「example_user / example_repo」リポジトリの課題#42が閉じます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.