GitHub での Pull Request のテキストには情報が書いてあるが、git のコミットメッセージだと1行目のタイトルしか書かれていないケースがあるが、個人的には git のコミットメッセージをそのまま GitHub の PR のテキストになるようにしておくと捗る。git のコミットが1つの場合はコミットメッセージの 1行目が Pull Request のタイトル、3行目以降が本文になることを活用した設定について書いておく (複数コミットで 1 Pull Request のときは職人の温かみある作業でうまいことやっときましょう) 。
git のデフォルトだと、コミットメッセージを編集するエディタでのコメント行が # になっている。一方で GitHub の Pull Request で文書構造を作る時は Markdown となるため、見出しに使う # がコメント行としてコミットメッセージから消えてたいへん不便。
そこで自分の場合は、^ を git で使うエディタでのコメント行として扱うようにしている。
% git config --global core.commentchar '^'
若干手を入れていたかもしれないが、差分としてはこうなる。
diff --git a/dot.gitconfig b/dot.gitconfig index 07e3ef8..a95eae6 100644 --- a/dot.gitconfig +++ b/dot.gitconfig @@ -30,6 +30,7 @@ branch = auto interactive = auto [core] + commentchar = ^ editor = emacsclient -nw -a '' excludesfile = ~/.gitignore [diff]
コメント行として ^ を使うようにしたのは、# はデフォルトで Markdown の見出し記法と相性が悪いので最初に対象外とした他、! や @ などはコミットメッセージでコード例を記したときに、真偽値を反転する ! や Ruby だとインスタンス変数を表す @ を忘れた頃に行頭に書いてコメント扱いでコミットメッセージから消えてて泣きそうといった理由。比較的行頭に使わなさそうな ^ を選んだ気がするけれど、このあたりはプラットフォームや経験則に応じて選ぶと良さそう。
昨日 RuboCop に出した PR のコミットを実例に挙げるとこうなる。
2020年5月6日追記
2018年5月3日に ^ だとRuboCop の警告引用と相性が悪かったため commentchar の値を ~ に変更していた。