Perintah man secara mengejutkan menerima argumen `` git diff``

2

Hari ini, saya tidak sengaja mengetik man git diffyang seharusnya tidak memberikan hasil, sebagaimana mestinya, menurut manual, ditafsirkan sebagai perbedaan halaman di bagian git . Namun, halaman git-diff (1) sebenarnya ditampilkan. Bagaimana itu bisa terjadi? (Menggunakan man 2.5.7 seperti yang termasuk dalam Ubuntu Lucid)

artisoex
sumber

Jawaban:

6

man (1) di Ubuntu mengatakan:

--no-subpages
              By default, man will try to interpret pairs of manual page names given on the command line as
              equivalent to a single manual page name containing a hyphen.  This supports the  common  pat-
              tern  of  programs  that  implement  a number of subcommands, allowing them to provide manual
              pages for each that can be accessed using similar syntax as would be used to invoke the  sub-
              commands themselves.  For example:

                $ man -aw git diff
                /usr/share/man/man1/git-diff.1.gz

              To disable this behaviour, use the --no-subpages option.

                $ man -aw --no-subpages git diff
                /usr/share/man/man1/git.1.gz
                /usr/share/man/man3/Git.3pm.gz
                /usr/share/man/man1/diff.1.gz
Florian Diesch
sumber
Itu lucu - mereka memilih contoh yang sama. Terima kasih!
artistoex
The man-db pelaksanaan manmenambahkan ini pada tahun 2009 ternyata: git.savannah.gnu.org/cgit/man-db.git/commit/...
David Röthlisberger
1

Git mungkin memiliki referensi untuk diffdi gityang menunjuk ke git-diff.

Josh K.
sumber