web-dev-qa-db-ja.com

git commitメッセージのデフォルトのコメントを変更するにはどうすればよいですか?

デフォルトのgit commitメッセージのコメント部分を変更することはできますか?ユーザー向けにもう少し「コンテキスト」情報を追加したい。

# Please enter the commit message for your changes.
# (Comment lines starting with '#' will not be included)
# Explicit paths specified without -i nor -o; assuming --only paths...
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       modified:   test.txt
#
48
zedoo

そのために git hooks を使用できます。変更をコミットする人にコミットメッセージが表示される前に、prepare-commit-msgスクリプトが実行されます。

サンプルのprepare-commit-msgスクリプトは.git/hooksにあります。

デフォルトのメッセージを編集するには、.git/hooksフォルダーにprepare-commit-msgという新しいファイルを作成します。次のようなスクリプトを使用して、コミットメッセージを編集できます。

#!/bin/sh
echo "#Some more info...." >> $1

$ 1変数は、コミットメッセージファイルへのファイルパスを格納します。

44
weiqure

commit.template構成変数があり、これは git-config(1) マンページに従っています:

新しいコミットメッセージのテンプレートとして使用するファイルを指定します。 「~/」は$ HOMEの値に展開され、「~user/」は指定されたユーザーのホームディレクトリに展開されます。

リポジトリごと(.git/config)、ユーザー(~/.gitconfig)、およびシステム(/etc/gitconfig)の構成ファイルに配置できます。

71
Jakub Narębski

デフォルトのメッセージをクリーンアップするpython git-hookを次に示します。フック名:_prepare-commit-msg_。

_#!/usr/bin/env python
import sys
commit_msg_file_path = sys.argv[1]
with open(commit_msg_file_path, 'a') as file:
    file.write('')
_

file.write()メソッドにテキストを追加するだけです。

0
swayamraina