简体中文 ▾ 主题 ▾ 最新版本 ▾ 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])以及伪配置,例如基于文件的 .git/hooks/* 接口,该接口在 githooks[5] 中有描述。

--developer-interfaces

将文件格式、协议和其他开发者接口文档的列表打印到标准输出。

-i
--info

info 格式显示命令的手册页。info 程序将用于此目的。

-m
--man

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

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

-w
--web

web (HTML) 格式显示命令的手册页。将使用网络浏览器为此目的。

可以使用配置变量 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。请参阅上面选项部分中的 -w|--webgit-web--browse[1]

man.viewer

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

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

  • "woman": 使用 emacsclient 在 emacs 中启动 "woman" 模式(这仅在 emacsclient 版本 22 及以上版本中有效);

  • "konqueror": 使用 kfmclient 在新标签页中打开 man 页(参见下面的 关于 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 来运行该命令,并将 man 页作为参数传递。

关于 konqueror 的说明

当在 man.viewer 配置变量中指定 konqueror 时,我们将使用 kfmclient 来尝试在新打开的 konqueror 标签页中打开 man 页,如果可能的话。

为了保持一致性,如果我们尝试类似 A_PATH_TO/konqueror 的设置,即使 man.konqueror.path 设置为该值,我们也尝试这种技巧。这意味着我们将尝试启动 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] 套件的一部分