Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 人类如何找到git';s子命令手册页?_Linux_Git_Macos_Manpage - Fatal编程技术网

Linux 人类如何找到git';s子命令手册页?

Linux 人类如何找到git';s子命令手册页?,linux,git,macos,manpage,Linux,Git,Macos,Manpage,在我的linux系统上,我可以执行“mangit日志”(注意空格),这将显示git日志(1)(带破折号)的手册页,正如预期的那样 在我的MacOSX机器上,“ManGitLog”只显示git(1)的手册页面 linux人员如何知道应该将“git”和“log”这两个参数组合起来以找到“git log”手册页?如何在OSX中获得相同的结果?这是在许多Linux系统上使用的功能。关于(对于man),在的描述中提到了--no subpages选项: --无子页面 默认情况下,man将尝试解释成对的手册页

在我的linux系统上,我可以执行“mangit日志”(注意空格),这将显示git日志(1)(带破折号)的手册页,正如预期的那样

在我的MacOSX机器上,“ManGitLog”只显示git(1)的手册页面

linux人员如何知道应该将“git”和“log”这两个参数组合起来以找到“git log”手册页?如何在OSX中获得相同的结果?

这是在许多Linux系统上使用的功能。关于(对于
man
),在
的描述中提到了--no subpages
选项:

--无子页面

默认情况下,
man
将尝试解释成对的手册页面 命令行中给定的名称,相当于单个 包含连字符或下划线的手动页面名称。这 支持实现 子命令数,允许它们提供手动页面 对于每个可以使用类似语法访问的 用于调用子命令本身


man
的其他实现可以做不同的事情。例如(不是很好,但如果你仔细研究的话),在OSX El Capitan上快速检查
man git状态
,就会显示它试图找到状态的手动页面。但是,
mangit status
提供了一个手动页面。

您的mac中有什么版本的git?在你的“linux系统”中是什么版本?git log不是osx中合适的命令,而git log是。这是一个很好的问题,我猜git log是一个串联,或者让终端知道如何查找这两项,因为man将执行第一个参数而忽略后者。@KurzedMetal:OSX上通过MacPorts的2.5.1,Debian上的2.5.3Sid@nykc:实际上,git
git
命令实际上只是整个子命令集合的分派器,这些子命令作为可执行文件,通常位于某个偏僻的目录中。在Deb-Sid上,它们位于/usr/lib/git-core/中。在OSX上,通过MacPorts,它们位于/opt/local/libexec/git-core/中,您可以直接从那里运行它们!这就是为什么他们的手册页用破折号列出它们的原因。@johndelagentaye我不确定原因,但对答案感兴趣。谢谢你的澄清谢谢!我看到它被添加了,这可以解释为什么它会一直存在,但旧版本的RedHat没有。因此,人们可能不会在Mac OS X上享受同样的行为,因为Mac OS X没有特定的man实现,至少不是现成的,是这样吗?