162306a36Sopenharmony_ci.. include:: ../disclaimer-zh_CN.rst
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci:Original: Documentation/maintainer/configure-git.rst
462306a36Sopenharmony_ci
562306a36Sopenharmony_ci:译者:
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci 吴想成 Wu XiangCheng <bobwxc@email.cn>
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci.. _configuregit_zh:
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ciGit配置
1262306a36Sopenharmony_ci=======
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci本章讲述了维护者级别的git配置。
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ciDocumentation/maintainer/pull-requests.rst 中使用的标记分支应使用开发人员的
1762306a36Sopenharmony_ciGPG公钥进行签名。可以通过将 ``-u`` 标志传递给 ``git tag`` 来创建签名标记。
1862306a36Sopenharmony_ci但是,由于 *通常* 对同一项目使用同一个密钥,因此可以设置::
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci	git config user.signingkey "keyname"
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ci或者手动编辑你的 ``.git/config`` 或 ``~/.gitconfig`` 文件::
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci	[user]
2562306a36Sopenharmony_ci		name = Jane Developer
2662306a36Sopenharmony_ci		email = jd@domain.org
2762306a36Sopenharmony_ci		signingkey = jd@domain.org
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ci你可能需要告诉 ``git`` 去使用 ``gpg2``::
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci	[gpg]
3262306a36Sopenharmony_ci		program = /path/to/gpg2
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ci你可能也需要告诉 ``gpg`` 去使用哪个 ``tty`` (添加到你的shell rc文件中)::
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ci	export GPG_TTY=$(tty)
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci创建链接到lore.kernel.org的提交
4062306a36Sopenharmony_ci-------------------------------
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_cihttp://lore.kernel.org 网站是所有涉及或影响内核开发的邮件列表的总存档。在这里
4362306a36Sopenharmony_ci存储补丁存档是推荐的做法,当维护人员将补丁应用到子系统树时,最好提供一个指向
4462306a36Sopenharmony_cilore存档链接的标签,以便浏览提交历史的人可以找到某个更改背后的相关讨论和基本
4562306a36Sopenharmony_ci原理。链接标签如下所示:
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ci	Link: https://lore.kernel.org/r/<message-id>
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ci通过在git中添加以下钩子,可以将此配置为在发布 ``git am`` 时自动执行:
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci.. code-block:: none
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci	$ git config am.messageid true
5462306a36Sopenharmony_ci	$ cat >.git/hooks/applypatch-msg <<'EOF'
5562306a36Sopenharmony_ci	#!/bin/sh
5662306a36Sopenharmony_ci	. git-sh-setup
5762306a36Sopenharmony_ci	perl -pi -e 's|^Message-Id:\s*<?([^>]+)>?$|Link: https://lore.kernel.org/r/$1|g;' "$1"
5862306a36Sopenharmony_ci	test -x "$GIT_DIR/hooks/commit-msg" &&
5962306a36Sopenharmony_ci		exec "$GIT_DIR/hooks/commit-msg" ${1+"$@"}
6062306a36Sopenharmony_ci	:
6162306a36Sopenharmony_ci	EOF
6262306a36Sopenharmony_ci	$ chmod a+x .git/hooks/applypatch-msg
63