Configuring Git =============== This chapter describes maintainer level git configuration. Tagged branches used in pull requests (see Documentation/maintainer/pull-requests.rst) should be signed with the developers public GPG key. Signed tags can be created by passing ``-u <key-id>`` to ``git tag``. However, since you would *usually* use the same key for the project, you can set it in the configuration and use the ``-s`` flag. To set the default ``key-id`` use:: git config user.signingkey "keyname" Alternatively, edit your ``.git/config`` or ``~/.gitconfig`` file by hand:: [user] name = Jane Developer email = jd@domain.org signingkey = jd@domain.org You may need to tell ``git`` to use ``gpg2``:: [gpg] program = /path/to/gpg2 You may also like to tell ``gpg`` which ``tty`` to use (add to your shell rc file):: export GPG_TTY=$(tty) Creating commit links to lore.kernel.org ---------------------------------------- The web site https://lore.kernel.org is meant as a grand archive of all mail list traffic concerning or influencing the kernel development. Storing archives of patches here is a recommended practice, and when a maintainer applies a patch to a subsystem tree, it is a good idea to provide a Link: tag with a reference back to the lore archive so that people that browse the commit history can find related discussions and rationale behind a certain change. The link tag will look like this:: Link: https://lore.kernel.org/r/<message-id> This can be configured to happen automatically any time you issue ``git am`` by adding the following hook into your git:: $ git config am.messageid true $ cat >.git/hooks/applypatch-msg <<'EOF' #!/bin/sh . git-sh-setup perl -pi -e 's|^Message-I[dD]:\s*<?([^>]+)>?$|Link: https://lore.kernel.org/r/$1|g;' "$1" test -x "$GIT_DIR/hooks/commit-msg" && exec "$GIT_DIR/hooks/commit-msg" ${1+"$@"} : EOF $ chmod a+x .git/hooks/applypatch-msg