1. 記事一覧 >
  2. ブログ記事
category logo

GitLab git commit 複数行コメントのやり方いろいろ

(更新) (公開)

はじめに

git commit コマンドですが、複数行のコメントを指定できます。
やり方がいろいろありますので、試してみました。


各バージョンは、以下の通りです。

# gitlab-rake gitlab:env:info
GitLab information
Version:        13.11.2
GitLab Shell
Version:        13.17.0
# git --version
git version 2.25.1

シェルは、bashで
GNU bash, version 5.0.17(1)-release (x86_64-pc-linux-gnu) です。


本題に入る前に・・・

commitのコメントの2行目は空白にするのが推奨されます。(今回も全て空白にして試しました。)

理由は、コミットメッセージの最初の空白行までのテキストはコミットタイトルとして扱われ、空白行が無いと、ずっとタイトルだと思われるからのようです。

(情報元)


オプション無しでcommit

オプション無しでcommitするだけになります。

# git commit

OSの設定によるのですが、標準のエディタで編集します。


# git log -1
commit [commit ID]
Author: [Author名] <[Authorメールアドレス]>
Date:   [タイムスタンプ]

    1行目

    3行目
    4行目
    5行目

複数行コメント付きでコミットされています。

オプションの -1 は直近のcommit情報を見るという意味です。


GitLabで見ても複数行コメント付きでコミットされています。


git commit -m その1

-mを行数分指定します。

# git commit -m "1行目" -m "" -m "3行目" -m "4行目" -m "5行目"

# git log -1
commit [commit ID]
Author: [Author名] <[Authorメールアドレス]>
Date:   [タイムスタンプ]

    1行目

    3行目

    4行目

    5行目

空白行ができました。


GitLabで見ても空白行があるようです。


git commit -m その2

複数行コピーして、teratermに貼り付けます。
※git commit -m "<エンター>→1行目<エンター>・・・のように1行ずつ打ち込んでいっても同じです。

# git commit -m "
1行目

3行目
4行目
5行目
"

# git log -1
commit [commit ID]
Author: [Author名] <[Authorメールアドレス]>
Date:   [タイムスタンプ]

    1行目

    3行目
    4行目
    5行目

複数行コメント付きでコミットされています。


GitLabで見ても複数行コメント付きでコミットされています。


git commit -m その3

$'...\n...\n...'を使います。

bashのみでしか確認していません。

# git commit -m $'1行目\n\n3行目\n4行目\n5行目'

# git log -1
commit [commit ID]
Author: [Author名] <[Authorメールアドレス]>
Date:   [タイムスタンプ]

    1行目

    3行目
    4行目
    5行目

複数行コメント付きでコミットされています。


GitLabで見ても複数行コメント付きでコミットされています。


git commit -F その1

-Fオプションでヒアドキュメントの出力(マイナス記号の部分)を受け取ります。

# git commit -F- << EOM
1行目

3行目
4行目
5行目
EOM

--file= を使った以下でも全く同じ意味です。

# git commit --file=- << EOM
1行目

3行目
4行目
5行目
EOM

# git log -1
commit [commit ID]
Author: [Author名] <[Authorメールアドレス]>
Date:   [タイムスタンプ]

    1行目

    3行目
    4行目
    5行目

複数行コメント付きでコミットされています。


GitLabで見ても複数行コメント付きでコミットされています。


git commit -F その2

-Fオプションでファイルを指定します。

以下の内容のcommit.txtを作成

1行目

3行目
4行目
5行目

# git commit -F commit.txt

--file= を使った以下でも全く同じ意味です。

# git commit --file=commit.txt

# git log -1
commit [commit ID]
Author: [Author名] <[Authorメールアドレス]>
Date:   [タイムスタンプ]

    1行目

    3行目
    4行目
    5行目

複数行コメント付きでコミットされています。


GitLabで見ても複数行コメント付きでコミットされています。

loading...