10

git でバージョン管理されたコードにタグを付けるとき、タグ メッセージで箇条書きを使用するのが好きです。

これは、注釈付きタグを使用して簡単に実行できます。

git tag -a v1.0.0

* Change number 1
* Change number 2
#
# Write a tag message
#

ただし、-m オプションを使用して同じタグを使用しようとすると、タグ メッセージが期待どおりに表示されません。

git tag -a v1.0.0 -m "* Change number 1\n* Change number 2"

git show v1.0.0

...

* Change number 1\n* Change number 2
....

'\n' は、改行ではなく、文字どおり '\' および 'n' として解釈されました。-mこのオプションを使用して、タグ付けプロセスを自動化したいと考えています。

git tagオプションを使用して実際の改行文字を含める方法はあり-mますか?

4

4 に答える 4

15

私が見つけた最も近い解決策は-m、各行に 1 つずつ、複数のオプションを使用することです。例えば:

git tag -a v1.0.0 -m "* Change number 1" -m "* Change number 2"

git-tag の man ページから:

-m <msg>
   Use the given tag message (instead of prompting). If multiple
   -m options are given, their values are concatenated as separate
   paragraphs. (...)

更新:より多くのシェルベースのソリューションについては、「コマンドラインから git commit -m に改行を追加する」を確認してください。

于 2012-05-21T17:49:45.920 に答える
4

もう1つの方法は、フォーマットされたメッセージを(一時)ファイルに入れ、git tag -F <filename> <tag>そのファイルからメッセージを読み取るために使用することです。

于 2012-05-21T17:58:55.913 に答える
1

UNIXシェルを使用していると仮定すると、改行の構文が間違っています。

git tag -a v1.0.0 -m "* Change number 1
* Change number 2"

動作するはずです。

于 2012-09-04T21:23:53.653 に答える