1Configuring Git 2=============== 3 4This chapter describes maintainer level git configuration. 5 6Tagged branches used in pull requests (see 7Documentation/maintainer/pull-requests.rst) should be signed with the 8developers public GPG key. Signed tags can be created by passing 9``-u <key-id>`` to ``git tag``. However, since you would *usually* use the same 10key for the project, you can set it in the configuration and use the ``-s`` 11flag. To set the default ``key-id`` use:: 12 13 git config user.signingkey "keyname" 14 15Alternatively, edit your ``.git/config`` or ``~/.gitconfig`` file by hand:: 16 17 [user] 18 name = Jane Developer 19 email = jd@domain.org 20 signingkey = jd@domain.org 21 22You may need to tell ``git`` to use ``gpg2``:: 23 24 [gpg] 25 program = /path/to/gpg2 26 27You may also like to tell ``gpg`` which ``tty`` to use (add to your shell 28rc file):: 29 30 export GPG_TTY=$(tty) 31 32 33Creating commit links to lore.kernel.org 34---------------------------------------- 35 36The web site https://lore.kernel.org is meant as a grand archive of all mail 37list traffic concerning or influencing the kernel development. Storing archives 38of patches here is a recommended practice, and when a maintainer applies a 39patch to a subsystem tree, it is a good idea to provide a Link: tag with a 40reference back to the lore archive so that people that browse the commit 41history can find related discussions and rationale behind a certain change. 42The link tag will look like this:: 43 44 Link: https://lore.kernel.org/r/<message-id> 45 46This can be configured to happen automatically any time you issue ``git am`` 47by adding the following hook into your git:: 48 49 $ git config am.messageid true 50 $ cat >.git/hooks/applypatch-msg <<'EOF' 51 #!/bin/sh 52 . git-sh-setup 53 perl -pi -e 's|^Message-I[dD]:\s*<?([^>]+)>?$|Link: https://lore.kernel.org/r/$1|g;' "$1" 54 test -x "$GIT_DIR/hooks/commit-msg" && 55 exec "$GIT_DIR/hooks/commit-msg" ${1+"$@"} 56 : 57 EOF 58 $ chmod a+x .git/hooks/applypatch-msg 59