简体中文 ▾ 主题 ▾ 最新版本 ▾ git-help 最后更新于 2.43.0

名称

git-help - 显示关于 Git 的帮助信息

概要

git help [-a|--all] [--[no-]verbose] [--[no-]external-commands] [--[no-]aliases]
git help [[-i|--info] [-m|--man] [-w|--web]] [<command>|<doc>]
git help [-g|--guides]
git help [-c|--config]
git help [--user-interfaces]
git help [--developer-interfaces]

描述

如果没有指定选项,也没有给定 <command>(命令)或 <doc>(文档),标准输出将打印 git 命令的摘要以及最常用 Git 命令的列表。

如果给出了选项 --all-a,标准输出将打印所有可用命令。

如果给出了选项 --guides-g,标准输出还会打印一份 Git 概念指南列表。

如果给出了命令或其他文档,将调出相关的手册页。默认情况下使用 man 程序来实现此目的,但这可以通过其他选项或配置变量进行覆盖。

如果给出了别名,git 会在标准输出上显示该别名的定义。要获取别名命令的手册页,请使用 git <command> --help

注意,git --help ...git help ... 是完全一样的,因为前者在内部会被转换为后者。

要显示 git[1] 手册页,请使用 git help git

此页面可以通过 git help helpgit help --help 显示。

选项

-a
--all

在标准输出上打印所有可用命令。

--no-external-commands

当与 --all 一起使用时,排除列出在 $PATH 中找到的外部“git-*”命令。

--no-aliases

当与 --all 一起使用时,排除列出已配置的别名。

--verbose

当与 --all 一起使用时,打印所有识别出的命令的描述。这是默认设置。

-c
--config

列出所有可用的配置变量。这是 git-config[1] 中列表的简要总结。

-g
--guides

在标准输出上打印 Git 概念指南列表。

--user-interfaces

在标准输出上打印仓库、命令和文件接口文档列表。

.git/info/exclude 这样的仓库内文件接口在这里有记录(参见 gitrepository-layout[5]),同样还有像 .mailmap 这样的树内配置(参见 gitmailmap[5])。

这部分文档还涵盖了通用或广泛使用的用户界面约定(例如 gitcli[7]),以及伪配置,例如 githooks[5] 中描述的基于文件的 .git/hooks/* 接口。

--developer-interfaces

在标准输出上打印文件格式、协议和其他开发人员接口的文档列表。

-i
--info

info 格式显示命令的手册页。将使用 info 程序来实现此目的。

-m
--man

man 格式显示命令的手册页。此选项可用于覆盖 help.format 配置变量中设置的值。

默认情况下将使用 man 程序来显示手册页,但可以使用 man.viewer 配置变量来选择其他显示程序(见下文)。

-w
--web

web (HTML) 格式显示命令的手册页。将使用 Web 浏览器来实现此目的。

Web 浏览器可以使用配置变量 help.browser 指定,如果未设置前者,则使用 web.browser。如果这两个配置变量均未设置,git web--browse 辅助脚本(由 git help 调用)将选择一个合适的默认值。有关此内容的更多信息,请参见 git-web--browse[1]

配置变量

help.format

如果没有传递命令行选项,则会检查 help.format 配置变量。该变量支持以下值;它们使 git help 的行为与其对应的命令行选项一致:

  • "man" 对应 -m|--man

  • "info" 对应 -i|--info

  • "web" 或 "html" 对应 -w|--web

help.browser, web.browser, 以及 browser.<tool>.path

如果选择了 web 格式(通过命令行选项或配置变量),也会检查 help.browserweb.browserbrowser.<tool>.path。请参见上述 OPTIONS 部分中的 -w|--webgit-web--browse[1]

man.viewer

如果选择了 man 格式,则会检查 man.viewer 配置变量。目前支持以下值:

  • "man":照常使用 man 程序,

  • "woman":使用 emacsclient 在 emacs 中启动 "woman" 模式(这仅适用于 emacsclient 22 及更高版本),

  • "konqueror":使用 kfmclient 在新的 konqueror 标签页中打开手册页(见下文 关于 konqueror 的说明)。

如果有对应的 man.<tool>.cmd 配置条目,也可以使用其他工具的值(见下文)。

可以为 man.viewer 配置变量提供多个值。它们对应的程序将按照配置文件中列出的顺序进行尝试。

例如,此配置:

	[man]
		viewer = konqueror
		viewer = woman

将首先尝试使用 konqueror。但这可能会失败(例如,如果未设置 DISPLAY),在这种情况下将尝试使用 emacs 的 woman 模式。

如果所有方法都失败,或者没有配置查看器,则会尝试 GIT_MAN_VIEWER 环境变量中指定的查看器。如果这也失败了,无论如何都会尝试 man 程序。

man.<tool>.path

您可以通过设置配置变量 man.<tool>.path 来显式提供您首选 man 查看器的完整路径。例如,您可以通过设置 man.konqueror.path 来配置 konqueror 的绝对路径。否则,git help 假设该工具在 PATH 中可用。

man.<tool>.cmd

man.viewer 配置变量指定的 man 查看器不在受支持的列表中时,将查找相应的 man.<tool>.cmd 配置变量。如果该变量存在,则指定的工具将被视为自定义命令,并使用 shell eval 来运行该命令,并将手册页作为参数传递。

关于 konqueror 的说明

man.viewer 配置变量中指定了 konqueror 时,我们会启动 kfmclient,尽可能尝试在已打开的 konqueror 的新标签页中打开手册页。

为了保持一致性,如果 man.konqueror.path 被设置为类似 A_PATH_TO/konqueror 的内容,我们也会尝试这种技巧。这意味着我们将尝试启动 A_PATH_TO/kfmclient

如果您确实想使用 konqueror,那么可以使用类似以下内容:

	[man]
		viewer = konq

	[man "konq"]
		cmd = A_PATH_TO/konqueror

关于 git config --global 的说明

请注意,所有这些配置变量都应该使用 --global 标志进行设置,例如像这样:

$ git config --global help.format web
$ git config --global web.browser firefox

因为它们可能更多是用户特定的,而不是仓库特定的。有关此内容的更多信息,请参见 git-config[1]

GIT

Git[1] 套件的一部分