scripts/commit-template.jsがcherry-pickに悪影響を及ぼす
Closed this issue · 2 comments
sounisi5011 commented
cherry-pickしようとしたところ、commitコメントにテンプレートの内容がそのまま入ってしまう問題が発生した。
cherry-pickする機会は少ないが、こんなややこしいバグは潰さねばならない。
sounisi5011 commented
COMMIT_SOURCE
でちゃんと判定したほうが良さそうだ。
cherry-pickする場合、COMMIT_SOURCE
の値は'message'
になる。
これは、-m
オプションなどを設定した時の値になる。
このような場合には、テンプレートの挿入は止めたほうがいいだろう。
そして、通常のcommitの場合は、COMMIT_SOURCE
はundefined
になる。
そうか、commit-template
のあの条件分岐はそういう事だったのか…
sounisi5011 commented
-m
オプションや-C
オプションのようなエディタが出てこないモードでテンプレートは挿入してはならない。コメントが解釈されない。
ただ、これらすべてをCOMMIT_SOURCE
の値で判定できない。
エディタが出る-c
オプションも、エディタが出ない-C
オプションも、COMMIT_SOURCE
の値は"commit"
。他の引数や標準入力にも差はない。
判定できるとすれば、コミットメッセージにデフォルトで入力されるコメントの有無。要検証