{"thread":{"id":"13842","subject":"[PATCH 2/2] git-commit.txt: Add missing long/short options","startedAt":"2008-06-07T00:24:20Z","lastAt":"2008-06-08T04:23:56Z","messageCount":12,"participants":["Stephan Beyer","Christian Couder","Junio C Hamano","Jon Loeliger","Jeff King"],"isPatch":true,"patchVersion":1,"patchTotal":2},"messages":[{"id":"78996","messageId":"1212798261-26785-1-git-send-email-s-beyer@gmx.net","threadId":"13842","inReplyTo":null,"subject":"[PATCH 1/2] git-commit.txt: Correct option alternatives","fromName":"Stephan Beyer","fromEmail":"s-beyer@gmx.net","sentAt":"2008-06-07T00:24:20Z","receivedAt":"2008-06-07T00:24:20Z","isPatch":true,"sender":{"key":"s-beyer@gmx.net","avatar":"https://avatars.githubusercontent.com/u/143889?v=4"},"body":"This patch fixes the SYNOPSIS in git-commit.txt:\n * --amend is not an alternative option to -c/-C/-F/-m\n * -m and -F are not alternative options to -c/-C,\n   because you can reuse authorship from a commit (-c/-C)\n   but change the message (-m/-F).\n\nFurthermore, for long-option consistency --author <author>\nis changed to --author=<author>.\n\nSigned-off-by: Stephan Beyer <s-beyer@gmx.net>\n---\nHi,\n\nDirk Süsserott's question about \"minimal documentation patches\" reminded me\nof an obscurity I came across in the SYNOPSIS section of the git-commit manual:\n [(-c | -C) <commit> | -F <file> | -m <msg> | --amend]\n\nIt suggests that you can't do something like\n  git commit --amend -C deadf00 -m \"Foo is dead. Long live foo.\"\nor that it might not be useful.\n\n\nThe second hunk is: --author <author> is advertised for historical\nreasons (I guess), but all the other long options with an argument\nare --long-opt=<arg>, e.g. --message=<msg> or --cleanup=<mode>.\n(Notice the equals sign.)\nBecause parse_long_opt() accepts both, I changed this for consistency\nreasons.\n\nRegards,\n  Stephan\n\n Documentation/git-commit.txt |    6 +++---\n 1 files changed, 3 insertions(+), 3 deletions(-)\n\ndiff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt\nindex c3c9f5b..c734326 100644\n--- a/Documentation/git-commit.txt\n+++ b/Documentation/git-commit.txt\n@@ -8,8 +8,8 @@ git-commit - Record changes to the repository\n SYNOPSIS\n --------\n [verse]\n-'git-commit' [-a | --interactive] [-s] [-v] [-u]\n-\t   [(-c | -C) <commit> | -F <file> | -m <msg> | --amend]\n+'git-commit' [-a | --interactive] [-s] [-v] [-u] [--amend]\n+\t   [(-c | -C) <commit>] [-F <file> | -m <msg>]\n \t   [--allow-empty] [--no-verify] [-e] [--author <author>]\n \t   [--cleanup=<mode>] [--] [[-i | -o ]<file>...]\n \n@@ -68,7 +68,7 @@ OPTIONS\n \tTake the commit message from the given file.  Use '-' to\n \tread the message from the standard input.\n \n---author <author>::\n+--author=<author>::\n \tOverride the author name used in the commit.  Use\n \t`A U Thor <author@example.com>` format.\n \n-- \n1.5.5.1\n"},{"id":"78995","messageId":"1212798261-26785-2-git-send-email-s-beyer@gmx.net","threadId":"13842","inReplyTo":"1212798261-26785-1-git-send-email-s-beyer@gmx.net","subject":"[PATCH 2/2] git-commit.txt: Add missing long/short options","fromName":"Stephan Beyer","fromEmail":"s-beyer@gmx.net","sentAt":"2008-06-07T00:24:21Z","receivedAt":"2008-06-07T00:24:21Z","isPatch":true,"sender":{"key":"s-beyer@gmx.net","avatar":"https://avatars.githubusercontent.com/u/143889?v=4"},"body":"Furthmore, use\n\tshort option::\n\tlong option::\ninstead of\n\tshort option|long option::\nand split the \"-c or -C <commit>\" item into two separate items.\n\nSigned-off-by: Stephan Beyer <s-beyer@gmx.net>\n---\nHi again,\n\nI added short or long options where they were missing because I think \nthe manual page should talk about all options.\nI also thought that it's useful to split the -c and -C case\nand to use asciidoc's\n -f::\n --foo::\nwhich will result in an \"-f, -foo\" for manual pages and imho\nalso is easier to read in the HTML output ;-)\n\nHmmm, somehow I don't expect that you will accept this patch ;-)\n\nRegards,\n  Stephan\n\n Documentation/git-commit.txt |   45 ++++++++++++++++++++++++++++--------------\n 1 files changed, 30 insertions(+), 15 deletions(-)\n\ndiff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt\nindex c734326..43bc3e7 100644\n--- a/Documentation/git-commit.txt\n+++ b/Documentation/git-commit.txt\n@@ -52,19 +52,25 @@ that, you can recover from it with linkgit:git-reset[1].\n \n OPTIONS\n -------\n--a|--all::\n+-a::\n+--all::\n \tTell the command to automatically stage files that have\n \tbeen modified and deleted, but new files you have not\n \ttold git about are not affected.\n \n--c or -C <commit>::\n+-C <commit>::\n+--reuse-message=<commit>::\n \tTake existing commit object, and reuse the log message\n \tand the authorship information (including the timestamp)\n-\twhen creating the commit.  With '-C', the editor is not\n-\tinvoked; with '-c' the user can further edit the commit\n-\tmessage.\n+\twhen creating the commit.\n+\n+-c <commit>\n+--reedit-message=<commit>::\n+\tLike '-C' but with '-c' the editor is invoked, so that\n+\tthe user can further edit the commit message.\n \n -F <file>::\n+--file=<file>::\n \tTake the commit message from the given file.  Use '-' to\n \tread the message from the standard input.\n \n@@ -72,19 +78,23 @@ OPTIONS\n \tOverride the author name used in the commit.  Use\n \t`A U Thor <author@example.com>` format.\n \n--m <msg>|--message=<msg>::\n+-m <msg>::\n+--message=<msg>::\n \tUse the given <msg> as the commit message.\n \n--t <file>|--template=<file>::\n+-t <file>::\n+--template=<file>::\n \tUse the contents of the given file as the initial version\n \tof the commit message. The editor is invoked and you can\n \tmake subsequent changes. If a message is specified using\n \tthe `-m` or `-F` options, this option has no effect. This\n \toverrides the `commit.template` configuration variable.\n \n--s|--signoff::\n+-s::\n+--signoff::\n \tAdd Signed-off-by line at the end of the commit message.\n \n+-n::\n --no-verify::\n \tThis option bypasses the pre-commit and commit-msg hooks.\n \tSee also linkgit:githooks[5][hooks].\n@@ -105,14 +115,14 @@ OPTIONS\n \t'whitespace' removes just leading/trailing whitespace lines\n \tand 'strip' removes both whitespace and commentary.\n \n--e|--edit::\n+-e::\n+--edit::\n \tThe message taken from file with `-F`, command line with\n \t`-m`, and from file with `-C` are usually used as the\n \tcommit log message unmodified.  This option lets you\n \tfurther edit the message taken from these sources.\n \n --amend::\n-\n \tUsed to amend the tip of the current branch. Prepare the tree\n \tobject you would want to replace the latest commit as usual\n \t(this includes the usual -i/-o and explicit paths), and the\n@@ -133,13 +143,15 @@ It is a rough equivalent for:\n but can be used to amend a merge commit.\n --\n \n--i|--include::\n+-i::\n+--include::\n \tBefore making a commit out of staged contents so far,\n \tstage the contents of paths given on the command line\n \tas well.  This is usually not what you want unless you\n \tare concluding a conflicted merge.\n \n--o|--only::\n+-o::\n+--only::\n \tMake a commit only from the paths specified on the\n \tcommand line, disregarding any contents that have been\n \tstaged so far. This is the default mode of operation of\n@@ -150,20 +162,23 @@ but can be used to amend a merge commit.\n \tthe last commit without committing changes that have\n \talready been staged.\n \n--u|--untracked-files::\n+-u::\n+--untracked-files::\n \tShow all untracked files, also those in uninteresting\n \tdirectories, in the \"Untracked files:\" section of commit\n \tmessage template.  Without this option only its name and\n \ta trailing slash are displayed for each untracked\n \tdirectory.\n \n--v|--verbose::\n+-v::\n+--verbose::\n \tShow unified diff between the HEAD commit and what\n \twould be committed at the bottom of the commit message\n \ttemplate.  Note that this diff output doesn't have its\n \tlines prefixed with '#'.\n \n--q|--quiet::\n+-q::\n+--quiet::\n \tSuppress commit summary message.\n \n \\--::\n-- \n1.5.5.1\n"},{"id":"79010","messageId":"200806070534.45761.chriscool@tuxfamily.org","threadId":"13842","inReplyTo":"1212798261-26785-1-git-send-email-s-beyer@gmx.net","subject":"Re: [PATCH 1/2] git-commit.txt: Correct option alternatives","fromName":"Christian Couder","fromEmail":"chriscool@tuxfamily.org","sentAt":"2008-06-07T03:34:45Z","receivedAt":"2008-06-07T03:34:45Z","isPatch":true,"sender":{"key":"christian.couder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/208954?v=4"},"body":"Le samedi 7 juin 2008, Stephan Beyer a écrit :\n>\n> Furthermore, for long-option consistency --author <author>\n> is changed to --author=<author>.\n\n[...]\n\n> The second hunk is: --author <author> is advertised for historical\n> reasons (I guess), but all the other long options with an argument\n> are --long-opt=<arg>, e.g. --message=<msg> or --cleanup=<mode>.\n> (Notice the equals sign.)\n> Because parse_long_opt() accepts both, I changed this for consistency\n> reasons.\n\n[...]\n\n> @@ -8,8 +8,8 @@ git-commit - Record changes to the repository\n>  SYNOPSIS\n>  --------\n>  [verse]\n> -'git-commit' [-a | --interactive] [-s] [-v] [-u]\n> -\t   [(-c | -C) <commit> | -F <file> | -m <msg> | --amend]\n> +'git-commit' [-a | --interactive] [-s] [-v] [-u] [--amend]\n> +\t   [(-c | -C) <commit>] [-F <file> | -m <msg>]\n>  \t   [--allow-empty] [--no-verify] [-e] [--author <author>]\n\nIn the above line there is still \"[--author <author>]\" without \"=\",\n\n>  \t   [--cleanup=<mode>] [--] [[-i | -o ]<file>...]\n\nwhile in this line there is \"[--cleanup=<mode>]\" with \"=\".\n\nSo I think that to be consistent, \"[--author=<author>]\" (with \"=\") should be \nused in the SYNOPSIS too.\n\n> @@ -68,7 +68,7 @@ OPTIONS\n>  \tTake the commit message from the given file.  Use '-' to\n>  \tread the message from the standard input.\n>\n> ---author <author>::\n> +--author=<author>::\n>  \tOverride the author name used in the commit.  Use\n>  \t`A U Thor <author@example.com>` format.\n\nThanks,\nChristian.\n"},{"id":"79039","messageId":"1212836805-20684-1-git-send-email-s-beyer@gmx.net","threadId":"13842","inReplyTo":"200806070534.45761.chriscool@tuxfamily.org","subject":"[PATCH v2] git-commit.txt: Correct option alternatives","fromName":"Stephan Beyer","fromEmail":"s-beyer@gmx.net","sentAt":"2008-06-07T11:06:45Z","receivedAt":"2008-06-07T11:06:45Z","isPatch":true,"sender":{"key":"s-beyer@gmx.net","avatar":"https://avatars.githubusercontent.com/u/143889?v=4"},"body":"This patch fixes the SYNOPSIS in git-commit.txt:\n * --amend is not an alternative option to -c/-C/-F/-m\n * -m and -F are not alternative options to -c/-C,\n   because you can reuse authorship from a commit (-c/-C)\n   but change the message (-m/-F).\n\nFurthermore, for long-option consistency --author <author>\nis changed to --author=<author>.\n\nSigned-off-by: Stephan Beyer <s-beyer@gmx.net>\n---\nThanks, Christian.\nSometimes I'm too blind.\n\n Documentation/git-commit.txt |    8 ++++----\n 1 files changed, 4 insertions(+), 4 deletions(-)\n\ndiff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt\nindex 02d4baa..40bf63e 100644\n--- a/Documentation/git-commit.txt\n+++ b/Documentation/git-commit.txt\n@@ -8,9 +8,9 @@ git-commit - Record changes to the repository\n SYNOPSIS\n --------\n [verse]\n-'git-commit' [-a | --interactive] [-s] [-v] [-u]\n-\t   [(-c | -C) <commit> | -F <file> | -m <msg> | --amend]\n-\t   [--allow-empty] [--no-verify] [-e] [--author <author>]\n+'git-commit' [-a | --interactive] [-s] [-v] [-u] [--amend]\n+\t   [(-c | -C) <commit>] [-F <file> | -m <msg>]\n+\t   [--allow-empty] [--no-verify] [-e] [--author=<author>]\n \t   [--cleanup=<mode>] [--] [[-i | -o ]<file>...]\n \n DESCRIPTION\n@@ -68,7 +68,7 @@ OPTIONS\n \tTake the commit message from the given file.  Use '-' to\n \tread the message from the standard input.\n \n---author <author>::\n+--author=<author>::\n \tOverride the author name used in the commit.  Use\n \t`A U Thor <author@example.com>` format.\n \n-- \n1.5.5.1\n"},{"id":"79069","messageId":"7vy75hlzvv.fsf@gitster.siamese.dyndns.org","threadId":"13842","inReplyTo":"1212798261-26785-2-git-send-email-s-beyer@gmx.net","subject":"Re: [PATCH 2/2] git-commit.txt: Add missing long/short options","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-06-07T21:05:24Z","receivedAt":"2008-06-07T21:05:24Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Stephan Beyer <s-beyer@gmx.net> writes:\n\n> Furthmore, use\n> \tshort option::\n> \tlong option::\n> instead of\n> \tshort option|long option::\n> and split the \"-c or -C <commit>\" item into two separate items.\n\n> ... \n> --q|--quiet::\n> +-q::\n> +--quiet::\n\nWhile this may result in easier-to-read output, there are tons of other\npages that follow the current style.  I'd prefer:\n\n (1) a patch without \"a|b\\n\" => \"a::\\nb::\" for only git-commit.txt and\n\n (2) a patch that is \"a|b\\n\" => \"a::\\nb::\" for everybody but without any\n     other changes.\n"},{"id":"79083","messageId":"1212888972-29039-1-git-send-email-s-beyer@gmx.net","threadId":"13842","inReplyTo":"7vy75hlzvv.fsf@gitster.siamese.dyndns.org","subject":"[PATCH 1/5] git-commit.txt: Add missing long/short options","fromName":"Stephan Beyer","fromEmail":"s-beyer@gmx.net","sentAt":"2008-06-08T01:36:08Z","receivedAt":"2008-06-08T01:36:08Z","isPatch":true,"sender":{"key":"s-beyer@gmx.net","avatar":"https://avatars.githubusercontent.com/u/143889?v=4"},"body":"And split the \"-c or -C <commit>\" item into two separate items.\n\nSigned-off-by: Stephan Beyer <s-beyer@gmx.net>\n---\nHi,\n\nso here's the first one ;-)\n\n Documentation/git-commit.txt |   15 ++++++++-------\n 1 files changed, 8 insertions(+), 7 deletions(-)\n\ndiff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt\nindex 40bf63e..a94b4e3 100644\n--- a/Documentation/git-commit.txt\n+++ b/Documentation/git-commit.txt\n@@ -57,14 +57,16 @@ OPTIONS\n \tbeen modified and deleted, but new files you have not\n \ttold git about are not affected.\n \n--c or -C <commit>::\n+-C <commit>|--reuse-message=<commit>::\n \tTake existing commit object, and reuse the log message\n \tand the authorship information (including the timestamp)\n-\twhen creating the commit.  With '-C', the editor is not\n-\tinvoked; with '-c' the user can further edit the commit\n-\tmessage.\n+\twhen creating the commit.\n \n--F <file>::\n+-c <commit>|--reedit-message=<commit>::\n+\tLike '-C', but with '-c' the editor is invoked, so that\n+\tthe user can further edit the commit message.\n+\n+-F <file>|--file=<file>::\n \tTake the commit message from the given file.  Use '-' to\n \tread the message from the standard input.\n \n@@ -85,7 +87,7 @@ OPTIONS\n -s|--signoff::\n \tAdd Signed-off-by line at the end of the commit message.\n \n---no-verify::\n+-n|--no-verify::\n \tThis option bypasses the pre-commit and commit-msg hooks.\n \tSee also linkgit:githooks[5][hooks].\n \n@@ -112,7 +114,6 @@ OPTIONS\n \tfurther edit the message taken from these sources.\n \n --amend::\n-\n \tUsed to amend the tip of the current branch. Prepare the tree\n \tobject you would want to replace the latest commit as usual\n \t(this includes the usual -i/-o and explicit paths), and the\n-- \n1.5.5.1\n"},{"id":"79087","messageId":"1212888972-29039-2-git-send-email-s-beyer@gmx.net","threadId":"13842","inReplyTo":"1212888972-29039-1-git-send-email-s-beyer@gmx.net","subject":"[PATCH 2/5] Docs: Use \"-l::\\n--long\\n\" format in OPTIONS sections","fromName":"Stephan Beyer","fromEmail":"s-beyer@gmx.net","sentAt":"2008-06-08T01:36:09Z","receivedAt":"2008-06-08T01:36:09Z","isPatch":true,"sender":{"key":"s-beyer@gmx.net","avatar":"https://avatars.githubusercontent.com/u/143889?v=4"},"body":"The OPTIONS section of a documentation file contains a list\nof the options a git command accepts.\nCurrently there are several variants to describe the case that\ndifferent options (almost) do the same in the OPTIONS section.\nSome are:\n -f, --foo::\n -f|--foo::\n -f | --foo::\n\nBut AsciiDoc has the special form:\n -f::\n --foo::\n\nThis patch\n * applies this form to the documentation of the whole git suite,\n * removes useless em-dash prevention, so \\--foo becomes --foo.\n\nSigned-off-by: Stephan Beyer <s-beyer@gmx.net>\n---\nHi,\n\nAlthough the patch is large, it's not a big thing and nonetheless easily \nreviewed, I hope.\n\nFor those who are unsure about the \\--foo => --foo conversion:\nAsciiDoc converts a \"--\" word to an \"em dash\" (&#8212; in HTML).\nBut it does NOT do this on something like --foo.\nSo \\--foo is a useless escaping which just leads to confusion :)\n\nRegards,\n  Stephan\n\n Documentation/blame-options.txt          |    6 +++-\n Documentation/fetch-options.txt          |   30 +++++++++++++--------\n Documentation/git-add.txt                |   16 +++++++----\n Documentation/git-am.txt                 |   24 +++++++++++-----\n Documentation/git-apply.txt              |    9 ++++--\n Documentation/git-archive.txt            |    6 +++-\n Documentation/git-blame.txt              |    6 +++-\n Documentation/git-branch.txt             |    3 +-\n Documentation/git-checkout-index.txt     |   15 +++++++---\n Documentation/git-checkout.txt           |    3 +-\n Documentation/git-cherry-pick.txt        |   12 +++++---\n Documentation/git-commit.txt             |   42 ++++++++++++++++++++----------\n Documentation/git-config.txt             |    9 ++++--\n Documentation/git-cvsserver.txt          |    7 +++-\n Documentation/git-daemon.txt             |   12 +++++---\n Documentation/git-diff-files.txt         |    3 +-\n Documentation/git-fetch-pack.txt         |   22 ++++++++-------\n Documentation/git-filter-branch.txt      |    3 +-\n Documentation/git-fmt-merge-msg.txt      |    6 +++-\n Documentation/git-for-each-ref.txt       |    5 +++-\n Documentation/git-format-patch.txt       |   15 +++++++---\n Documentation/git-grep.txt               |   37 +++++++++++++++++++-------\n Documentation/git-help.txt               |   12 +++++---\n Documentation/git-http-push.txt          |    3 +-\n Documentation/git-init.txt               |    3 +-\n Documentation/git-instaweb.txt           |   15 +++++++---\n Documentation/git-ls-files.txt           |   30 ++++++++++++++-------\n Documentation/git-ls-remote.txt          |    8 ++++-\n Documentation/git-mv.txt                 |    3 +-\n Documentation/git-pack-objects.txt       |    3 +-\n Documentation/git-pack-refs.txt          |    4 +-\n Documentation/git-peek-remote.txt        |    2 +-\n Documentation/git-prune.txt              |    2 +-\n Documentation/git-pull.txt               |    6 ++--\n Documentation/git-push.txt               |   23 +++++++++-------\n Documentation/git-rebase.txt             |   15 +++++++---\n Documentation/git-repack.txt             |    3 +-\n Documentation/git-rev-parse.txt          |   12 +++++---\n Documentation/git-revert.txt             |   12 +++++---\n Documentation/git-rm.txt                 |   10 ++++---\n Documentation/git-send-email.txt         |   12 +++++---\n Documentation/git-send-pack.txt          |   14 +++++-----\n Documentation/git-shortlog.txt           |   12 +++++---\n Documentation/git-show-branch.txt        |    6 +++-\n Documentation/git-show-ref.txt           |   21 ++++++++++-----\n Documentation/git-stripspace.txt         |    3 +-\n Documentation/git-submodule.txt          |    9 ++++--\n Documentation/git-symbolic-ref.txt       |    3 +-\n Documentation/git-update-index.txt       |    6 +++-\n Documentation/git-update-server-info.txt |    3 +-\n Documentation/git-upload-pack.txt        |    4 +-\n Documentation/git-web--browse.txt        |    9 ++++--\n Documentation/git.txt                    |    3 +-\n Documentation/gitk.txt                   |    3 +-\n Documentation/merge-options.txt          |    9 ++++--\n Documentation/rev-list-options.txt       |   30 ++++++++++++++-------\n 56 files changed, 394 insertions(+), 210 deletions(-)\n\ndiff --git a/Documentation/blame-options.txt b/Documentation/blame-options.txt\nindex c11bb7d..5428111 100644\n--- a/Documentation/blame-options.txt\n+++ b/Documentation/blame-options.txt\n@@ -41,7 +41,8 @@ of lines before or after the line given by <start>.\n -S <revs-file>::\n \tUse revs from revs-file instead of calling linkgit:git-rev-list[1].\n \n--p, --porcelain::\n+-p::\n+--porcelain::\n \tShow in a format designed for machine consumption.\n \n --incremental::\n@@ -83,5 +84,6 @@ alphanumeric characters that git must detect as moving\n between files for it to associate those lines with the parent\n commit.\n \n--h, --help::\n+-h::\n+--help::\n \tShow help message.\ndiff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt\nindex b675911..85c8718 100644\n--- a/Documentation/fetch-options.txt\n+++ b/Documentation/fetch-options.txt\n@@ -1,22 +1,26 @@\n--q, \\--quiet::\n+-q::\n+--quiet::\n \tPass --quiet to git-fetch-pack and silence any other internally\n \tused programs.\n \n--v, \\--verbose::\n+-v::\n+--verbose::\n \tBe verbose.\n \n--a, \\--append::\n+-a::\n+--append::\n \tAppend ref names and object names of fetched refs to the\n \texisting contents of `.git/FETCH_HEAD`.  Without this\n \toption old data in `.git/FETCH_HEAD` will be overwritten.\n \n-\\--upload-pack <upload-pack>::\n+--upload-pack <upload-pack>::\n \tWhen given, and the repository to fetch from is handled\n \tby 'git-fetch-pack', '--exec=<upload-pack>' is passed to\n \tthe command to specify non-default path for the command\n \trun on the other end.\n \n--f, \\--force::\n+-f::\n+--force::\n \tWhen `git-fetch` is used with `<rbranch>:<lbranch>`\n \trefspec, it refuses to update the local branch\n \t`<lbranch>` unless the remote branch `<rbranch>` it\n@@ -24,16 +28,18 @@\n \toverrides that check.\n \n ifdef::git-pull[]\n-\\--no-tags::\n+--no-tags::\n endif::git-pull[]\n ifndef::git-pull[]\n--n, \\--no-tags::\n+-n::\n+--no-tags::\n endif::git-pull[]\n \tBy default, tags that point at objects that are downloaded\n \tfrom the remote repository are fetched and stored locally.\n \tThis option disables this automatic tag following.\n \n--t, \\--tags::\n+-t::\n+--tags::\n \tMost of the tags are fetched automatically as branch\n \theads are downloaded, but tags that do not point at\n \tobjects reachable from the branch heads that are being\n@@ -41,10 +47,12 @@ endif::git-pull[]\n \tflag lets all tags and their associated objects be\n \tdownloaded.\n \n--k, \\--keep::\n+-k::\n+--keep::\n \tKeep downloaded pack.\n \n--u, \\--update-head-ok::\n+-u::\n+--update-head-ok::\n \tBy default `git-fetch` refuses to update the head which\n \tcorresponds to the current branch.  This flag disables the\n \tcheck.  This is purely for the internal use for `git-pull`\n@@ -52,7 +60,7 @@ endif::git-pull[]\n \timplementing your own Porcelain you are not supposed to\n \tuse it.\n \n-\\--depth=<depth>::\n+--depth=<depth>::\n \tDeepen the history of a 'shallow' repository created by\n \t`git clone` with `--depth=<depth>` option (see linkgit:git-clone[1])\n \tby the specified number of commits.\ndiff --git a/Documentation/git-add.txt b/Documentation/git-add.txt\nindex 88165da..9c6b081 100644\n--- a/Documentation/git-add.txt\n+++ b/Documentation/git-add.txt\n@@ -50,22 +50,26 @@ OPTIONS\n \tand `dir/file2`) can be given to add all files in the\n \tdirectory, recursively.\n \n--n, \\--dry-run::\n+-n::\n+--dry-run::\n         Don't actually add the file(s), just show if they exist.\n \n--v, \\--verbose::\n+-v::\n+--verbose::\n         Be verbose.\n \n -f::\n \tAllow adding otherwise ignored files.\n \n--i, \\--interactive::\n+-i::\n+--interactive::\n \tAdd modified contents in the working tree interactively to\n \tthe index. Optional path arguments may be supplied to limit\n \toperation to a subset of the working tree. See ``Interactive\n \tmode'' for details.\n \n--p, \\--patch::\n+-p::\n+--patch::\n \tSimilar to Interactive mode but the initial command loop is\n \tbypassed and the 'patch' subcommand is invoked using each of\n \tthe specified filepatterns before exiting.\n@@ -79,11 +83,11 @@ OPTIONS\n \tcommand line. If no paths are specified, all tracked files in the\n \tcurrent directory and its subdirectories are updated.\n \n-\\--refresh::\n+--refresh::\n \tDon't add the file(s), but only refresh their stat()\n \tinformation in the index.\n \n-\\--ignore-errors::\n+--ignore-errors::\n \tIf some files could not be added because of errors indexing\n \tthem, do not abort the operation, but continue adding the\n \tothers. The command shall still exit with non-zero status.\ndiff --git a/Documentation/git-am.txt b/Documentation/git-am.txt\nindex 7f6f5b4..46544a0 100644\n--- a/Documentation/git-am.txt\n+++ b/Documentation/git-am.txt\n@@ -28,14 +28,17 @@ OPTIONS\n \tsupply this argument, reads from the standard input. If you supply\n \tdirectories, they'll be treated as Maildirs.\n \n--s, --signoff::\n+-s::\n+--signoff::\n \tAdd `Signed-off-by:` line to the commit message, using\n \tthe committer identity of yourself.\n \n--k, --keep::\n+-k::\n+--keep::\n \tPass `-k` flag to `git-mailinfo` (see linkgit:git-mailinfo[1]).\n \n--u, --utf8::\n+-u::\n+--utf8::\n \tPass `-u` flag to `git-mailinfo` (see linkgit:git-mailinfo[1]).\n \tThe proposed commit log message taken from the e-mail\n \tis re-coded into UTF-8 encoding (configuration variable\n@@ -49,13 +52,15 @@ default.   You could use `--no-utf8` to override this.\n \tPass `-n` flag to `git-mailinfo` (see\n \tlinkgit:git-mailinfo[1]).\n \n--3, --3way::\n+-3::\n+--3way::\n \tWhen the patch does not apply cleanly, fall back on\n \t3-way merge, if the patch records the identity of blobs\n \tit is supposed to apply to, and we have those blobs\n \tavailable locally.\n \n--b, --binary::\n+-b::\n+--binary::\n \tPass `--allow-binary-replacement` flag to `git-apply`\n \t(see linkgit:git-apply[1]).\n \n@@ -64,19 +69,22 @@ default.   You could use `--no-utf8` to override this.\n \tprogram that applies\n \tthe patch.\n \n--C<n>, -p<n>::\n+-C<n>::\n+-p<n>::\n \tThese flags are passed to the `git-apply` (see linkgit:git-apply[1])\n \tprogram that applies\n \tthe patch.\n \n--i, --interactive::\n+-i::\n+--interactive::\n \tRun interactively.\n \n --skip::\n \tSkip the current patch.  This is only meaningful when\n \trestarting an aborted patch.\n \n--r, --resolved::\n+-r::\n+--resolved::\n \tAfter a patch failure (e.g. attempting to apply\n \tconflicting patch), the user has applied it by hand and\n \tthe index file stores the result of the application.\ndiff --git a/Documentation/git-apply.txt b/Documentation/git-apply.txt\nindex 76277bd..c834763 100644\n--- a/Documentation/git-apply.txt\n+++ b/Documentation/git-apply.txt\n@@ -73,7 +73,8 @@ OPTIONS\n When a pure mode change is encountered (which has no index information),\n the information is read from the current index instead.\n \n--R, --reverse::\n+-R::\n+--reverse::\n \tApply the patch in reverse.\n \n --reject::\n@@ -124,7 +125,8 @@ discouraged.\n \tthe result with this option, which would apply the\n \tdeletion part but not addition part.\n \n---allow-binary-replacement, --binary::\n+--allow-binary-replacement::\n+--binary::\n \tHistorically we did not allow binary patch applied\n \twithout an explicit permission from the user, and this\n \tflag was the way to do so.  Currently we always allow binary\n@@ -169,7 +171,8 @@ behavior:\n \tcorrectly. This option adds support for applying such patches by\n \tworking around this bug.\n \n--v, --verbose::\n+-v::\n+--verbose::\n \tReport progress to stderr. By default, only a message about the\n \tcurrent patch being applied will be printed. This option will cause\n \tadditional information to be reported.\ndiff --git a/Documentation/git-archive.txt b/Documentation/git-archive.txt\nindex a3e36db..9b5f3ae 100644\n--- a/Documentation/git-archive.txt\n+++ b/Documentation/git-archive.txt\n@@ -36,10 +36,12 @@ OPTIONS\n \tFormat of the resulting archive: 'tar' or 'zip'.  The default\n \tis 'tar'.\n \n---list, -l::\n+-l::\n+--list::\n \tShow all available formats.\n \n---verbose, -v::\n+-v::\n+--verbose::\n \tReport progress to stderr.\n \n --prefix=<prefix>/::\ndiff --git a/Documentation/git-blame.txt b/Documentation/git-blame.txt\nindex 7900f33..8f4fb46 100644\n--- a/Documentation/git-blame.txt\n+++ b/Documentation/git-blame.txt\n@@ -52,12 +52,14 @@ include::blame-options.txt[]\n \ta certain threshold for git-blame to consider those lines\n \tof code to have been moved.\n \n--f, --show-name::\n+-f::\n+--show-name::\n \tShow filename in the original commit.  By default\n \tfilename is shown if there is any line that came from a\n \tfile with different name, due to rename detection.\n \n--n, --show-number::\n+-n::\n+--show-number::\n \tShow line number in the original commit (Default: off).\n \n -s::\ndiff --git a/Documentation/git-branch.txt b/Documentation/git-branch.txt\nindex a70fa76..0fd5808 100644\n--- a/Documentation/git-branch.txt\n+++ b/Documentation/git-branch.txt\n@@ -95,7 +95,8 @@ OPTIONS\n -a::\n \tList both remote-tracking branches and local branches.\n \n--v, --verbose::\n+-v::\n+--verbose::\n \tShow sha1 and commit subject line for each head.\n \n --abbrev=<length>::\ndiff --git a/Documentation/git-checkout-index.txt b/Documentation/git-checkout-index.txt\nindex a8cad9c..676203b 100644\n--- a/Documentation/git-checkout-index.txt\n+++ b/Documentation/git-checkout-index.txt\n@@ -22,21 +22,26 @@ Will copy all files listed from the index to the working directory\n \n OPTIONS\n -------\n--u|--index::\n+-u::\n+--index::\n \tupdate stat information for the checked out entries in\n \tthe index file.\n \n--q|--quiet::\n+-q::\n+--quiet::\n \tbe quiet if files exist or are not in the index\n \n--f|--force::\n+-f::\n+--force::\n \tforces overwrite of existing files\n \n--a|--all::\n+-a::\n+--all::\n \tchecks out all files in the index.  Cannot be used\n \ttogether with explicit filenames.\n \n--n|--no-create::\n+-n::\n+--no-create::\n \tDon't checkout new files, only refresh files already checked\n \tout.\n \ndiff --git a/Documentation/git-checkout.txt b/Documentation/git-checkout.txt\nindex a5bf9d6..3ad9760 100644\n--- a/Documentation/git-checkout.txt\n+++ b/Documentation/git-checkout.txt\n@@ -47,7 +47,8 @@ OPTIONS\n \tby linkgit:git-check-ref-format[1].  Some of these checks\n \tmay restrict the characters allowed in a branch name.\n \n--t, --track::\n+-t::\n+--track::\n \tWhen creating a new branch, set up configuration so that git-pull\n \twill automatically retrieve data from the start point, which must be\n \ta branch. Use this if you always pull from the same upstream branch\ndiff --git a/Documentation/git-cherry-pick.txt b/Documentation/git-cherry-pick.txt\nindex 3762272..5ac9cfb 100644\n--- a/Documentation/git-cherry-pick.txt\n+++ b/Documentation/git-cherry-pick.txt\n@@ -22,7 +22,8 @@ OPTIONS\n \tFor a more complete list of ways to spell commits, see\n \t\"SPECIFYING REVISIONS\" section in linkgit:git-rev-parse[1].\n \n--e|--edit::\n+-e::\n+--edit::\n \tWith this option, `git-cherry-pick` will let you edit the commit\n \tmessage prior to committing.\n \n@@ -44,14 +45,16 @@ OPTIONS\n \tdescribed above, and `-r` was to disable it.  Now the\n \tdefault is not to do `-x` so this option is a no-op.\n \n--m parent-number|--mainline parent-number::\n+-m parent-number::\n+--mainline parent-number::\n \tUsually you cannot cherry-pick a merge because you do not know which\n \tside of the merge should be considered the mainline.  This\n \toption specifies the parent number (starting from 1) of\n \tthe mainline and allows cherry-pick to replay the change\n \trelative to the specified parent.\n \n--n|--no-commit::\n+-n::\n+--no-commit::\n \tUsually the command automatically creates a commit with\n \ta commit log message stating which commit was\n \tcherry-picked.  This flag applies the change necessary\n@@ -64,7 +67,8 @@ OPTIONS\n This is useful when cherry-picking more than one commits'\n effect to your working tree in a row.\n \n--s|--signoff::\n+-s::\n+--signoff::\n \tAdd Signed-off-by line at the end of the commit message.\n \n \ndiff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt\nindex a94b4e3..7502a31 100644\n--- a/Documentation/git-commit.txt\n+++ b/Documentation/git-commit.txt\n@@ -52,21 +52,25 @@ that, you can recover from it with linkgit:git-reset[1].\n \n OPTIONS\n -------\n--a|--all::\n+-a::\n+--all::\n \tTell the command to automatically stage files that have\n \tbeen modified and deleted, but new files you have not\n \ttold git about are not affected.\n \n--C <commit>|--reuse-message=<commit>::\n+-C <commit>::\n+--reuse-message=<commit>::\n \tTake existing commit object, and reuse the log message\n \tand the authorship information (including the timestamp)\n \twhen creating the commit.\n \n--c <commit>|--reedit-message=<commit>::\n+-c <commit>::\n+--reedit-message=<commit>::\n \tLike '-C', but with '-c' the editor is invoked, so that\n \tthe user can further edit the commit message.\n \n--F <file>|--file=<file>::\n+-F <file>::\n+--file=<file>::\n \tTake the commit message from the given file.  Use '-' to\n \tread the message from the standard input.\n \n@@ -74,20 +78,24 @@ OPTIONS\n \tOverride the author name used in the commit.  Use\n \t`A U Thor <author@example.com>` format.\n \n--m <msg>|--message=<msg>::\n+-m <msg>::\n+--message=<msg>::\n \tUse the given <msg> as the commit message.\n \n--t <file>|--template=<file>::\n+-t <file>::\n+--template=<file>::\n \tUse the contents of the given file as the initial version\n \tof the commit message. The editor is invoked and you can\n \tmake subsequent changes. If a message is specified using\n \tthe `-m` or `-F` options, this option has no effect. This\n \toverrides the `commit.template` configuration variable.\n \n--s|--signoff::\n+-s::\n+--signoff::\n \tAdd Signed-off-by line at the end of the commit message.\n \n--n|--no-verify::\n+-n::\n+--no-verify::\n \tThis option bypasses the pre-commit and commit-msg hooks.\n \tSee also linkgit:githooks[5][hooks].\n \n@@ -107,7 +115,8 @@ OPTIONS\n \t'whitespace' removes just leading/trailing whitespace lines\n \tand 'strip' removes both whitespace and commentary.\n \n--e|--edit::\n+-e::\n+--edit::\n \tThe message taken from file with `-F`, command line with\n \t`-m`, and from file with `-C` are usually used as the\n \tcommit log message unmodified.  This option lets you\n@@ -134,13 +143,15 @@ It is a rough equivalent for:\n but can be used to amend a merge commit.\n --\n \n--i|--include::\n+-i::\n+--include::\n \tBefore making a commit out of staged contents so far,\n \tstage the contents of paths given on the command line\n \tas well.  This is usually not what you want unless you\n \tare concluding a conflicted merge.\n \n--o|--only::\n+-o::\n+--only::\n \tMake a commit only from the paths specified on the\n \tcommand line, disregarding any contents that have been\n \tstaged so far. This is the default mode of operation of\n@@ -151,20 +162,23 @@ but can be used to amend a merge commit.\n \tthe last commit without committing changes that have\n \talready been staged.\n \n--u|--untracked-files::\n+-u::\n+--untracked-files::\n \tShow all untracked files, also those in uninteresting\n \tdirectories, in the \"Untracked files:\" section of commit\n \tmessage template.  Without this option only its name and\n \ta trailing slash are displayed for each untracked\n \tdirectory.\n \n--v|--verbose::\n+-v::\n+--verbose::\n \tShow unified diff between the HEAD commit and what\n \twould be committed at the bottom of the commit message\n \ttemplate.  Note that this diff output doesn't have its\n \tlines prefixed with '#'.\n \n--q|--quiet::\n+-q::\n+--quiet::\n \tSuppress commit summary message.\n \n \\--::\ndiff --git a/Documentation/git-config.txt b/Documentation/git-config.txt\nindex 84b754f..c90421e 100644\n--- a/Documentation/git-config.txt\n+++ b/Documentation/git-config.txt\n@@ -101,7 +101,8 @@ rather than from all available files.\n +\n See also <<FILES>>.\n \n--f config-file, --file config-file::\n+-f config-file::\n+--file config-file::\n \tUse the given config file instead of the one specified by GIT_CONFIG.\n \n --remove-section::\n@@ -116,7 +117,8 @@ See also <<FILES>>.\n --unset-all::\n \tRemove all lines matching the key from config file.\n \n--l, --list::\n+-l::\n+--list::\n \tList all variables set in config file.\n \n --bool::\n@@ -128,7 +130,8 @@ See also <<FILES>>.\n \tin the config file will cause the value to be multiplied\n \tby 1024, 1048576, or 1073741824 prior to output.\n \n--z, --null::\n+-z::\n+--null::\n \tFor all options that output values and/or keys, always\n \tend values with the null character (instead of a\n \tnewline). Use newline instead as a delimiter between\ndiff --git a/Documentation/git-cvsserver.txt b/Documentation/git-cvsserver.txt\nindex b772113..3310ae2 100644\n--- a/Documentation/git-cvsserver.txt\n+++ b/Documentation/git-cvsserver.txt\n@@ -41,10 +41,13 @@ Don't allow recursing into subdirectories\n Don't check for `gitcvs.enabled` in config. You also have to specify a list\n of allowed directories (see below) if you want to use this option.\n \n---version, -V::\n+-V::\n+--version::\n Print version information and exit\n \n---help, -h, -H::\n+-h::\n+-H::\n+--help::\n Print usage information and exit\n \n <directory>::\ndiff --git a/Documentation/git-daemon.txt b/Documentation/git-daemon.txt\nindex 3fb71d6..344f24e 100644\n--- a/Documentation/git-daemon.txt\n+++ b/Documentation/git-daemon.txt\n@@ -103,7 +103,8 @@ OPTIONS\n \tLog to syslog instead of stderr. Note that this option does not imply\n \t--verbose, thus by default only error conditions will be logged.\n \n---user-path, --user-path=path::\n+--user-path::\n+--user-path=path::\n \tAllow ~user notation to be used in requests.  When\n \tspecified with no parameter, requests to\n \tgit://host/~alice/foo is taken as a request to access\n@@ -127,7 +128,8 @@ OPTIONS\n \tSave the process id in 'file'.  Ignored when the daemon\n \tis run under `--inetd`.\n \n---user=user, --group=group::\n+--user=user::\n+--group=group::\n \tChange daemon's uid and gid before entering the service loop.\n \tWhen only `--user` is given without `--group`, the\n \tprimary group ID for the user is used.  The values of\n@@ -138,14 +140,16 @@ Giving these options is an error when used with `--inetd`; use\n the facility of inet daemon to achieve the same before spawning\n `git-daemon` if needed.\n \n---enable=service, --disable=service::\n+--enable=service::\n+--disable=service::\n \tEnable/disable the service site-wide per default.  Note\n \tthat a service disabled site-wide can still be enabled\n \tper repository if it is marked overridable and the\n \trepository enables the service with an configuration\n \titem.\n \n---allow-override=service, --forbid-override=service::\n+--allow-override=service::\n+--forbid-override=service::\n \tAllow/forbid overriding the site-wide default with per\n \trepository configuration.  By default, all the services\n \tare overridable.\ndiff --git a/Documentation/git-diff-files.txt b/Documentation/git-diff-files.txt\nindex ed9bd75..8a64869 100644\n--- a/Documentation/git-diff-files.txt\n+++ b/Documentation/git-diff-files.txt\n@@ -30,7 +30,8 @@ The default is to diff against our branch (-2) and the\n cleanly resolved paths.  The option -0 can be given to\n omit diff output for unmerged entries and just show \"Unmerged\".\n \n--c,--cc::\n+-c::\n+--cc::\n \tThis compares stage 2 (our branch), stage 3 (their\n \tbranch) and the working tree file and outputs a combined\n \tdiff, similar to the way 'diff-tree' shows a merge\ndiff --git a/Documentation/git-fetch-pack.txt b/Documentation/git-fetch-pack.txt\nindex 6ee3dcc..282fcaf 100644\n--- a/Documentation/git-fetch-pack.txt\n+++ b/Documentation/git-fetch-pack.txt\n@@ -28,30 +28,32 @@ have a common ancestor commit.\n \n OPTIONS\n -------\n-\\--all::\n+--all::\n \tFetch all remote refs.\n \n-\\--quiet, \\-q::\n+-q::\n+--quiet::\n \tPass '-q' flag to 'git-unpack-objects'; this makes the\n \tcloning process less verbose.\n \n-\\--keep, \\-k::\n+-k::\n+--keep::\n \tDo not invoke 'git-unpack-objects' on received data, but\n \tcreate a single packfile out of it instead, and store it\n \tin the object database. If provided twice then the pack is\n \tlocked against repacking.\n \n-\\--thin::\n+--thin::\n \tSpend extra cycles to minimize the number of objects to be sent.\n \tUse it on slower connection.\n \n-\\--include-tag::\n+--include-tag::\n \tIf the remote side supports it, annotated tags objects will\n \tbe downloaded on the same connection as the other objects if\n \tthe object the tag references is downloaded.  The caller must\n \totherwise determine the tags this option made available.\n \n-\\--upload-pack=<git-upload-pack>::\n+--upload-pack=<git-upload-pack>::\n \tUse this to specify the path to 'git-upload-pack' on the\n \tremote side, if is not found on your $PATH.\n \tInstallations of sshd ignores the user's environment\n@@ -63,16 +65,16 @@ OPTIONS\n \tshells by having a lean .bashrc file (they set most of\n \tthe things up in .bash_profile).\n \n-\\--exec=<git-upload-pack>::\n+--exec=<git-upload-pack>::\n \tSame as \\--upload-pack=<git-upload-pack>.\n \n-\\--depth=<n>::\n+--depth=<n>::\n \tLimit fetching to ancestor-chains not longer than n.\n \n-\\--no-progress::\n+--no-progress::\n \tDo not show the progress.\n \n-\\-v::\n+-v::\n \tRun verbosely.\n \n <host>::\ndiff --git a/Documentation/git-filter-branch.txt b/Documentation/git-filter-branch.txt\nindex 4406068..ea77f1f 100644\n--- a/Documentation/git-filter-branch.txt\n+++ b/Documentation/git-filter-branch.txt\n@@ -161,7 +161,8 @@ to other tags will be rewritten to point to the underlying commit.\n \tdoes this in the '.git-rewrite/' directory but you can override\n \tthat choice by this parameter.\n \n--f|--force::\n+-f::\n+--force::\n \t`git filter-branch` refuses to start with an existing temporary\n \tdirectory or when there are already refs starting with\n \t'refs/original/', unless forced.\ndiff --git a/Documentation/git-fmt-merge-msg.txt b/Documentation/git-fmt-merge-msg.txt\nindex 328cc54..2a7cfb9 100644\n--- a/Documentation/git-fmt-merge-msg.txt\n+++ b/Documentation/git-fmt-merge-msg.txt\n@@ -33,11 +33,13 @@ OPTIONS\n \tDo not list one-line descriptions from the actual commits being\n \tmerged.\n \n---summary,--no-summary::\n+--summary::\n+--no-summary::\n \tSynonyms to --log and --no-log; these are deprecated and will be\n \tremoved in the future.\n \n---file <file>, -F <file>::\n+-F <file>::\n+--file <file>::\n \tTake the list of merged objects from <file> instead of\n \tstdin.\n \ndiff --git a/Documentation/git-for-each-ref.txt b/Documentation/git-for-each-ref.txt\nindex 6325ff9..b347bfb 100644\n--- a/Documentation/git-for-each-ref.txt\n+++ b/Documentation/git-for-each-ref.txt\n@@ -53,7 +53,10 @@ OPTIONS\n \tliterally, in the latter case matching completely or from the\n \tbeginning up to a slash.\n \n---shell, --perl, --python, --tcl::\n+--shell::\n+--perl::\n+--python::\n+--tcl::\n \tIf given, strings that substitute `%(fieldname)`\n \tplaceholders are quoted as string literals suitable for\n \tthe specified host language.  This is meant to produce\ndiff --git a/Documentation/git-format-patch.txt b/Documentation/git-format-patch.txt\nindex cdee642..4dafa39 100644\n--- a/Documentation/git-format-patch.txt\n+++ b/Documentation/git-format-patch.txt\n@@ -74,14 +74,17 @@ include::diff-options.txt[]\n -<n>::\n \tLimits the number of patches to prepare.\n \n--o|--output-directory <dir>::\n+-o <dir>::\n+--output-directory <dir>::\n \tUse <dir> to store the resulting files, instead of the\n \tcurrent working directory.\n \n--n|--numbered::\n+-n::\n+--numbered::\n \tName output in '[PATCH n/m]' format.\n \n--N|--no-numbered::\n+-N::\n+--no-numbered::\n \tName output in '[PATCH]' format.\n \n --start-number <n>::\n@@ -92,11 +95,13 @@ include::diff-options.txt[]\n \twithout the default first line of the commit appended.\n \tMutually exclusive with the --stdout option.\n \n--k|--keep-subject::\n+-k::\n+--keep-subject::\n \tDo not strip/add '[PATCH]' from the first line of the\n \tcommit log message.\n \n--s|--signoff::\n+-s::\n+--signoff::\n \tAdd `Signed-off-by:` line to the commit message, using\n \tthe committer identity of yourself.\n \ndiff --git a/Documentation/git-grep.txt b/Documentation/git-grep.txt\nindex 13b9cf7..1b646b7 100644\n--- a/Documentation/git-grep.txt\n+++ b/Documentation/git-grep.txt\n@@ -33,25 +33,30 @@ OPTIONS\n \tInstead of searching in the working tree files, check\n \tthe blobs registered in the index file.\n \n--a | --text::\n+-a::\n+--text::\n \tProcess binary files as if they were text.\n \n--i | --ignore-case::\n+-i::\n+--ignore-case::\n \tIgnore case differences between the patterns and the\n \tfiles.\n \n -I::\n \tDon't match the pattern in binary files.\n \n--w | --word-regexp::\n+-w::\n+--word-regexp::\n \tMatch the pattern only at word boundary (either begin at the\n \tbeginning of a line, or preceded by a non-word character; end at\n \tthe end of a line or followed by a non-word character).\n \n--v | --invert-match::\n+-v::\n+--invert-match::\n \tSelect non-matching lines.\n \n--h | -H::\n+-h::\n+-H::\n \tBy default, the command shows the filename for each\n \tmatch.  `-h` option is used to suppress this output.\n \t`-H` is there for completeness and does not do anything\n@@ -64,24 +69,33 @@ OPTIONS\n \toption forces paths to be output relative to the project\n \ttop directory.\n \n--E | --extended-regexp | -G | --basic-regexp::\n+-E::\n+--extended-regexp::\n+-G::\n+--basic-regexp::\n \tUse POSIX extended/basic regexp for patterns.  Default\n \tis to use basic regexp.\n \n--F | --fixed-strings::\n+-F::\n+--fixed-strings::\n \tUse fixed strings for patterns (don't interpret pattern\n \tas a regex).\n \n -n::\n \tPrefix the line number to matching lines.\n \n--l | --files-with-matches | --name-only | -L | --files-without-match::\n+-l::\n+--files-with-matches::\n+--name-only::\n+-L::\n+--files-without-match::\n \tInstead of showing every matched line, show only the\n \tnames of files that contain (or do not contain) matches.\n \tFor better compatibility with git-diff, --name-only is a\n \tsynonym for --files-with-matches.\n \n--c | --count::\n+-c::\n+--count::\n \tInstead of showing every matched line, show the number of\n \tlines that match.\n \n@@ -103,7 +117,10 @@ OPTIONS\n \tscripts passing user input to grep.  Multiple patterns are\n \tcombined by 'or'.\n \n---and | --or | --not | ( | )::\n+--and::\n+--or::\n+--not::\n+( ... )::\n \tSpecify how multiple patterns are combined using Boolean\n \texpressions.  `--or` is the default operator.  `--and` has\n \thigher precedence than `--or`.  `-e` has to be used for all\ndiff --git a/Documentation/git-help.txt b/Documentation/git-help.txt\nindex 8994c6d..faecd6b 100644\n--- a/Documentation/git-help.txt\n+++ b/Documentation/git-help.txt\n@@ -28,15 +28,18 @@ former is internally converted into the latter.\n \n OPTIONS\n -------\n--a|--all::\n+-a::\n+--all::\n \tPrints all the available commands on the standard output. This\n \toption supersedes any other option.\n \n--i|--info::\n+-i::\n+--info::\n \tDisplay manual page for the command in the 'info' format. The\n \t'info' program will be used for that purpose.\n \n--m|--man::\n+-m::\n+--man::\n \tDisplay manual page for the command in the 'man' format. This\n \toption may be used to override a value set in the\n \t'help.format' configuration variable.\n@@ -45,7 +48,8 @@ By default the 'man' program will be used to display the manual page,\n but the 'man.viewer' configuration variable may be used to choose\n other display programs (see below).\n \n--w|--web::\n+-w::\n+--web::\n \tDisplay manual page for the command in the 'web' (HTML)\n \tformat. A web browser will be used for that purpose.\n +\ndiff --git a/Documentation/git-http-push.txt b/Documentation/git-http-push.txt\nindex 143291d..8d32a92 100644\n--- a/Documentation/git-http-push.txt\n+++ b/Documentation/git-http-push.txt\n@@ -40,7 +40,8 @@ OPTIONS\n \tReport the list of objects being walked locally and the\n \tlist of objects successfully sent to the remote repository.\n \n--d, -D::\n+-d::\n+-D::\n \tRemove <ref> from remote repository.  The specified branch\n \tcannot be the remote HEAD.  If -d is specified the following\n \tother conditions must also be met:\ndiff --git a/Documentation/git-init.txt b/Documentation/git-init.txt\nindex c48b615..792643c 100644\n--- a/Documentation/git-init.txt\n+++ b/Documentation/git-init.txt\n@@ -16,7 +16,8 @@ OPTIONS\n \n --\n \n--q, \\--quiet::\n+-q::\n+--quiet::\n \n Only print error and warning messages, all other output will be suppressed.\n \ndiff --git a/Documentation/git-instaweb.txt b/Documentation/git-instaweb.txt\nindex 11e6a81..7da5b8d 100644\n--- a/Documentation/git-instaweb.txt\n+++ b/Documentation/git-instaweb.txt\n@@ -20,24 +20,29 @@ repository.\n OPTIONS\n -------\n \n--l|--local::\n+-l::\n+--local::\n \tOnly bind the web server to the local IP (127.0.0.1).\n \n--d|--httpd::\n+-d::\n+--httpd::\n \tThe HTTP daemon command-line that will be executed.\n \tCommand-line options may be specified here, and the\n \tconfiguration file will be added at the end of the command-line.\n \tCurrently lighttpd, apache2 and webrick are supported.\n \t(Default: lighttpd)\n \n--m|--module-path::\n+-m::\n+--module-path::\n \tThe module path (only needed if httpd is Apache).\n \t(Default: /usr/lib/apache2/modules)\n \n--p|--port::\n+-p::\n+--port::\n \tThe port number to bind the httpd to.  (Default: 1234)\n \n--b|--browser::\n+-b::\n+--browser::\n \tThe web browser that should be used to view the gitweb\n \tpage. This will be passed to the 'git-web--browse' helper\n \tscript along with the URL of the gitweb instance. See\ndiff --git a/Documentation/git-ls-files.txt b/Documentation/git-ls-files.txt\nindex 1b0b212..560594e 100644\n--- a/Documentation/git-ls-files.txt\n+++ b/Documentation/git-ls-files.txt\n@@ -30,23 +30,29 @@ shown:\n \n OPTIONS\n -------\n--c|--cached::\n+-c::\n+--cached::\n \tShow cached files in the output (default)\n \n--d|--deleted::\n+-d::\n+--deleted::\n \tShow deleted files in the output\n \n--m|--modified::\n+-m::\n+--modified::\n \tShow modified files in the output\n \n--o|--others::\n+-o::\n+--others::\n \tShow other files in the output\n \n--i|--ignored::\n+-i::\n+--ignored::\n \tShow ignored files in the output.\n \tNote that this also reverses any exclude list present.\n \n--s|--stage::\n+-s::\n+--stage::\n \tShow stage files in the output\n \n --directory::\n@@ -56,10 +62,12 @@ OPTIONS\n --no-empty-directory::\n \tDo not list empty directories. Has no effect without --directory.\n \n--u|--unmerged::\n+-u::\n+--unmerged::\n \tShow unmerged files in the output (forces --stage)\n \n--k|--killed::\n+-k::\n+--killed::\n \tShow files on the filesystem that need to be removed due\n \tto file/directory conflicts for checkout-index to\n \tsucceed.\n@@ -67,11 +75,13 @@ OPTIONS\n -z::\n \t\\0 line termination on output.\n \n--x|--exclude=<pattern>::\n+-x <pattern>::\n+--exclude=<pattern>::\n \tSkips files matching pattern.\n \tNote that pattern is a shell wildcard pattern.\n \n--X|--exclude-from=<file>::\n+-X <file>::\n+--exclude-from=<file>::\n \texclude patterns are read from <file>; 1 per line.\n \n --exclude-per-directory=<file>::\ndiff --git a/Documentation/git-ls-remote.txt b/Documentation/git-ls-remote.txt\nindex 8ad7a94..f92f3ca 100644\n--- a/Documentation/git-ls-remote.txt\n+++ b/Documentation/git-ls-remote.txt\n@@ -20,13 +20,17 @@ commit IDs.\n \n OPTIONS\n -------\n--h|--heads, -t|--tags::\n+-h::\n+--heads::\n+-t::\n+--tags::\n \tLimit to only refs/heads and refs/tags, respectively.\n \tThese options are _not_ mutually exclusive; when given\n \tboth, references stored in refs/heads and refs/tags are\n \tdisplayed.\n \n--u <exec>, --upload-pack=<exec>::\n+-u <exec>::\n+--upload-pack=<exec>::\n \tSpecify the full path of linkgit:git-upload-pack[1] on the remote\n \thost. This allows listing references from repositories accessed via\n \tSSH and where the SSH daemon does not use the PATH configured by the\ndiff --git a/Documentation/git-mv.txt b/Documentation/git-mv.txt\nindex fb485de..3391906 100644\n--- a/Documentation/git-mv.txt\n+++ b/Documentation/git-mv.txt\n@@ -34,7 +34,8 @@ OPTIONS\n \tcondition. An error happens when a source is neither existing nor\n         controlled by GIT, or when it would overwrite an existing\n         file unless '-f' is given.\n--n, \\--dry-run::\n+-n::\n+--dry-run::\n \tDo nothing; only show what would happen\n \n \ndiff --git a/Documentation/git-pack-objects.txt b/Documentation/git-pack-objects.txt\nindex d5a87ef..f4d8d68 100644\n--- a/Documentation/git-pack-objects.txt\n+++ b/Documentation/git-pack-objects.txt\n@@ -79,7 +79,8 @@ base-name::\n \treference was included in the resulting packfile.  This\n \tcan be useful to send new tags to native git clients.\n \n---window=[N], --depth=[N]::\n+--window=[N]::\n+--depth=[N]::\n \tThese two options affect how the objects contained in\n \tthe pack are stored using delta compression.  The\n \tobjects are first internally sorted by type, size and\ndiff --git a/Documentation/git-pack-refs.txt b/Documentation/git-pack-refs.txt\nindex fa48681..c071846 100644\n--- a/Documentation/git-pack-refs.txt\n+++ b/Documentation/git-pack-refs.txt\n@@ -42,7 +42,7 @@ unpacked.\n OPTIONS\n -------\n \n-\\--all::\n+--all::\n \n The command by default packs all tags and refs that are already\n packed, and leaves other refs\n@@ -51,7 +51,7 @@ developed and packing their tips does not help performance.\n This option causes branch tips to be packed as well.  Useful for\n a repository with many branches of historical interests.\n \n-\\--no-prune::\n+--no-prune::\n \n The command usually removes loose refs under `$GIT_DIR/refs`\n hierarchy after packing them.  This option tells it not to.\ndiff --git a/Documentation/git-peek-remote.txt b/Documentation/git-peek-remote.txt\nindex 56be1b6..ffbf93a 100644\n--- a/Documentation/git-peek-remote.txt\n+++ b/Documentation/git-peek-remote.txt\n@@ -16,7 +16,7 @@ This command is deprecated; use `git-ls-remote` instead.\n \n OPTIONS\n -------\n-\\--upload-pack=<git-upload-pack>::\n+--upload-pack=<git-upload-pack>::\n \tUse this to specify the path to 'git-upload-pack' on the\n \tremote side, if it is not found on your $PATH. Some\n \tinstallations of sshd ignores the user's environment\ndiff --git a/Documentation/git-prune.txt b/Documentation/git-prune.txt\nindex 7283d07..ec335d6 100644\n--- a/Documentation/git-prune.txt\n+++ b/Documentation/git-prune.txt\n@@ -37,7 +37,7 @@ OPTIONS\n \\--::\n \tDo not interpret any more arguments as options.\n \n-\\--expire <time>::\n+--expire <time>::\n \tOnly expire loose objects older than <time>.\n \n <head>...::\ndiff --git a/Documentation/git-pull.txt b/Documentation/git-pull.txt\nindex 5c522ce..5f55f64 100644\n--- a/Documentation/git-pull.txt\n+++ b/Documentation/git-pull.txt\n@@ -30,7 +30,7 @@ include::merge-options.txt[]\n \n :git-pull: 1\n \n-\\--rebase::\n+--rebase::\n \tInstead of a merge, perform a rebase after fetching.  If\n \tthere is a remote ref for the upstream branch, and this branch\n \twas rebased since last fetched, the rebase uses that information\n@@ -43,8 +43,8 @@ It rewrites history, which does not bode well when you\n published that history already.  Do *not* use this option\n unless you have read linkgit:git-rebase[1] carefully.\n \n-\\--no-rebase::\n-\tOverride earlier \\--rebase.\n+--no-rebase::\n+\tOverride earlier --rebase.\n \n include::fetch-options.txt[]\n \ndiff --git a/Documentation/git-push.txt b/Documentation/git-push.txt\nindex 9d8c379..89e0049 100644\n--- a/Documentation/git-push.txt\n+++ b/Documentation/git-push.txt\n@@ -61,11 +61,11 @@ already exists on the remote side.  This is the default operation mode\n if no explicit refspec is found (that is neither on the command line\n nor in any Push line of the corresponding remotes file---see below).\n \n-\\--all::\n+--all::\n \tInstead of naming each ref to push, specifies that all\n \trefs under `$GIT_DIR/refs/heads/` be pushed.\n \n-\\--mirror::\n+--mirror::\n \tInstead of naming each ref to push, specifies that all\n \trefs under `$GIT_DIR/refs/heads/` and `$GIT_DIR/refs/tags/`\n \tbe mirrored to the remote repository.  Newly created local\n@@ -75,39 +75,42 @@ nor in any Push line of the corresponding remotes file---see below).\n \tif the configuration option `remote.<remote>.mirror` is\n \tset.\n \n-\\--dry-run::\n+--dry-run::\n \tDo everything except actually send the updates.\n \n-\\--tags::\n+--tags::\n \tAll refs under `$GIT_DIR/refs/tags` are pushed, in\n \taddition to refspecs explicitly listed on the command\n \tline.\n \n-\\--receive-pack=<git-receive-pack>::\n+--receive-pack=<git-receive-pack>::\n \tPath to the 'git-receive-pack' program on the remote\n \tend.  Sometimes useful when pushing to a remote\n \trepository over ssh, and you do not have the program in\n \ta directory on the default $PATH.\n \n-\\--exec=<git-receive-pack>::\n+--exec=<git-receive-pack>::\n \tSame as \\--receive-pack=<git-receive-pack>.\n \n--f, \\--force::\n+-f::\n+--force::\n \tUsually, the command refuses to update a remote ref that is\n \tnot an ancestor of the local ref used to overwrite it.\n \tThis flag disables the check.  This can cause the\n \tremote repository to lose commits; use it with care.\n \n-\\--repo=<repo>::\n+--repo=<repo>::\n \tWhen no repository is specified the command defaults to\n \t\"origin\"; this overrides it.\n \n-\\--thin, \\--no-thin::\n+--thin::\n+--no-thin::\n \tThese options are passed to `git-send-pack`.  Thin\n \ttransfer spends extra cycles to minimize the number of\n \tobjects to be sent and meant to be used on slower connection.\n \n--v, \\--verbose::\n+-v::\n+--verbose::\n \tRun verbosely.\n \n include::urls-remotes.txt[]\ndiff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt\nindex cc48bee..7166414 100644\n--- a/Documentation/git-rebase.txt\n+++ b/Documentation/git-rebase.txt\n@@ -213,19 +213,22 @@ OPTIONS\n --skip::\n \tRestart the rebasing process by skipping the current patch.\n \n--m, \\--merge::\n+-m::\n+--merge::\n \tUse merging strategies to rebase.  When the recursive (default) merge\n \tstrategy is used, this allows rebase to be aware of renames on the\n \tupstream side.\n \n--s <strategy>, \\--strategy=<strategy>::\n+-s <strategy>::\n+--strategy=<strategy>::\n \tUse the given merge strategy; can be supplied more than\n \tonce to specify them in the order they should be tried.\n \tIf there is no `-s` option, a built-in list of strategies\n \tis used instead (`git-merge-recursive` when merging a single\n \thead, `git-merge-octopus` otherwise).  This implies --merge.\n \n--v, \\--verbose::\n+-v::\n+--verbose::\n \tDisplay a diffstat of what changed upstream since the last rebase.\n \n -C<n>::\n@@ -238,12 +241,14 @@ OPTIONS\n \tThis flag is passed to the `git-apply` program\n \t(see linkgit:git-apply[1]) that applies the patch.\n \n--i, \\--interactive::\n+-i::\n+--interactive::\n \tMake a list of the commits which are about to be rebased.  Let the\n \tuser edit that list before rebasing.  This mode can also be used to\n \tsplit commits (see SPLITTING COMMITS below).\n \n--p, \\--preserve-merges::\n+-p::\n+--preserve-merges::\n \tInstead of ignoring merges, try to recreate them.  This option\n \tonly works in interactive mode.\n \ndiff --git a/Documentation/git-repack.txt b/Documentation/git-repack.txt\nindex 793dcca..04d6f1f 100644\n--- a/Documentation/git-repack.txt\n+++ b/Documentation/git-repack.txt\n@@ -73,7 +73,8 @@ OPTIONS\n \tthis repository (or a direct copy of it)\n \tover HTTP or FTP.  See gitlink:git-update-server-info[1].\n \n---window=[N], --depth=[N]::\n+--window=[N]::\n+--depth=[N]::\n \tThese two options affect how the objects contained in the pack are\n \tstored using delta compression. The objects are first internally\n \tsorted by type, size and optionally names and compared against the\ndiff --git a/Documentation/git-rev-parse.txt b/Documentation/git-rev-parse.txt\nindex a0ef1fd..9e273bc 100644\n--- a/Documentation/git-rev-parse.txt\n+++ b/Documentation/git-rev-parse.txt\n@@ -52,7 +52,8 @@ OPTIONS\n \tThe parameter given must be usable as a single, valid\n \tobject name.  Otherwise barf and abort.\n \n--q, --quiet::\n+-q::\n+--quiet::\n \tOnly meaningful in `--verify` mode. Do not output an error\n \tmessage if the first argument is not a valid object name;\n \tinstead exit with non-zero status silently.\n@@ -119,16 +120,19 @@ OPTIONS\n --is-bare-repository::\n \tWhen the repository is bare print \"true\", otherwise \"false\".\n \n---short, --short=number::\n+--short::\n+--short=number::\n \tInstead of outputting the full SHA1 values of object names try to\n \tabbreviate them to a shorter unique name. When no length is specified\n \t7 is used. The minimum length is 4.\n \n---since=datestring, --after=datestring::\n+--since=datestring::\n+--after=datestring::\n \tParses the date string, and outputs corresponding\n \t--max-age= parameter for git-rev-list command.\n \n---until=datestring, --before=datestring::\n+--until=datestring::\n+--before=datestring::\n \tParses the date string, and outputs corresponding\n \t--min-age= parameter for git-rev-list command.\n \ndiff --git a/Documentation/git-revert.txt b/Documentation/git-revert.txt\nindex 5e6adfc..5b49b81 100644\n--- a/Documentation/git-revert.txt\n+++ b/Documentation/git-revert.txt\n@@ -22,12 +22,14 @@ OPTIONS\n \tFor a more complete list of ways to spell commit names, see\n \t\"SPECIFYING REVISIONS\" section in linkgit:git-rev-parse[1].\n \n--e|--edit::\n+-e::\n+--edit::\n \tWith this option, `git-revert` will let you edit the commit\n \tmessage prior to committing the revert. This is the default if\n \tyou run the command from a terminal.\n \n--m parent-number|--mainline parent-number::\n+-m parent-number::\n+--mainline parent-number::\n \tUsually you cannot revert a merge because you do not know which\n \tside of the merge should be considered the mainline.  This\n \toption specifies the parent number (starting from 1) of\n@@ -38,7 +40,8 @@ OPTIONS\n \tWith this option, `git-revert` will not start the commit\n \tmessage editor.\n \n--n|--no-commit::\n+-n::\n+--no-commit::\n \tUsually the command automatically creates a commit with\n \ta commit log message stating which commit was reverted.\n \tThis flag applies the change necessary to revert the\n@@ -51,7 +54,8 @@ OPTIONS\n This is useful when reverting more than one commits'\n effect to your working tree in a row.\n \n--s|--signoff::\n+-s::\n+--signoff::\n \tAdd Signed-off-by line at the end of the commit message.\n \n \ndiff --git a/Documentation/git-rm.txt b/Documentation/git-rm.txt\nindex da3fe59..d88554b 100644\n--- a/Documentation/git-rm.txt\n+++ b/Documentation/git-rm.txt\n@@ -38,7 +38,8 @@ OPTIONS\n -f::\n \tOverride the up-to-date check.\n \n--n, \\--dry-run::\n+-n::\n+--dry-run::\n \tDon't actually remove any file(s).  Instead, just show\n \tif they exist in the index and would otherwise be removed\n \tby the command.\n@@ -52,15 +53,16 @@ OPTIONS\n \tthe list of files, (useful when filenames might be mistaken\n \tfor command-line options).\n \n-\\--cached::\n+--cached::\n \tUse this option to unstage and remove paths only from the index.\n \tWorking tree files, whether modified or not, will be\n \tleft alone.\n \n-\\--ignore-unmatch::\n+--ignore-unmatch::\n \tExit with a zero status even if no files matched.\n \n--q, \\--quiet::\n+-q::\n+--quiet::\n \tgit-rm normally outputs one line (in the form of an \"rm\" command)\n \tfor each file removed. This option suppresses that output.\n \ndiff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt\nindex a295837..251d661 100644\n--- a/Documentation/git-send-email.txt\n+++ b/Documentation/git-send-email.txt\n@@ -40,7 +40,8 @@ The --cc option must be repeated for each user you want on the cc list.\n \tOutput of this command must be single email address per line.\n \tDefault is the value of 'sendemail.cccmd' configuration value.\n \n---chain-reply-to, --no-chain-reply-to::\n+--chain-reply-to::\n+--no-chain-reply-to::\n \tIf this is set, each email will be sent as a reply to the previous\n \temail sent.  If disabled with \"--no-chain-reply-to\", all emails after\n \tthe first will be sent as replies to the first email sent.  When using\n@@ -65,7 +66,8 @@ The --cc option must be repeated for each user you want on the cc list.\n \tOnly necessary if --compose is also set.  If --compose\n \tis not set, this will be prompted for.\n \n---signed-off-by-cc, --no-signed-off-by-cc::\n+--signed-off-by-cc::\n+--no-signed-off-by-cc::\n         If this is set, add emails found in Signed-off-by: or Cc: lines to the\n         cc list.\n         Default is the value of 'sendemail.signedoffcc' configuration value;\n@@ -141,7 +143,8 @@ user is prompted for a password while the input is masked for privacy.\n \tOnly necessary if --compose is also set.  If --compose\n \tis not set, this will be prompted for.\n \n---suppress-from, --no-suppress-from::\n+--suppress-from::\n+--no-suppress-from::\n         If this is set, do not add the From: address to the cc: list.\n         Default is the value of 'sendemail.suppressfrom' configuration value;\n         if that is unspecified, default to --no-suppress-from.\n@@ -157,7 +160,8 @@ user is prompted for a password while the input is masked for privacy.\n \tif that is unspecified, default to 'self' if --suppress-from is\n \tspecified, as well as 'sob' if --no-signed-off-cc is specified.\n \n---thread, --no-thread::\n+--thread::\n+--no-thread::\n \tIf this is set, the In-Reply-To header will be set on each email sent.\n \tIf disabled with \"--no-thread\", no emails will have the In-Reply-To\n \theader set.\ndiff --git a/Documentation/git-send-pack.txt b/Documentation/git-send-pack.txt\nindex 850c351..ba2fdae 100644\n--- a/Documentation/git-send-pack.txt\n+++ b/Documentation/git-send-pack.txt\n@@ -21,33 +21,33 @@ updates it from the current repository, sending named refs.\n \n OPTIONS\n -------\n-\\--receive-pack=<git-receive-pack>::\n+--receive-pack=<git-receive-pack>::\n \tPath to the 'git-receive-pack' program on the remote\n \tend.  Sometimes useful when pushing to a remote\n \trepository over ssh, and you do not have the program in\n \ta directory on the default $PATH.\n \n-\\--exec=<git-receive-pack>::\n+--exec=<git-receive-pack>::\n \tSame as \\--receive-pack=<git-receive-pack>.\n \n-\\--all::\n+--all::\n \tInstead of explicitly specifying which refs to update,\n \tupdate all heads that locally exist.\n \n-\\--dry-run::\n+--dry-run::\n \tDo everything except actually send the updates.\n \n-\\--force::\n+--force::\n \tUsually, the command refuses to update a remote ref that\n \tis not an ancestor of the local ref used to overwrite it.\n \tThis flag disables the check.  What this means is that\n \tthe remote repository can lose commits; use it with\n \tcare.\n \n-\\--verbose::\n+--verbose::\n \tRun verbosely.\n \n-\\--thin::\n+--thin::\n \tSpend extra cycles to minimize the number of objects to be sent.\n \tUse it on slower connection.\n \ndiff --git a/Documentation/git-shortlog.txt b/Documentation/git-shortlog.txt\nindex 5079b56..daa64d4 100644\n--- a/Documentation/git-shortlog.txt\n+++ b/Documentation/git-shortlog.txt\n@@ -22,17 +22,21 @@ Additionally, \"[PATCH]\" will be stripped from the commit description.\n OPTIONS\n -------\n \n--h, \\--help::\n+-h::\n+--help::\n \tPrint a short usage message and exit.\n \n--n, \\--numbered::\n+-n::\n+--numbered::\n \tSort output according to the number of commits per author instead\n \tof author alphabetic order.\n \n--s, \\--summary::\n+-s::\n+--summary::\n \tSuppress commit description and provide a commit count summary only.\n \n--e, \\--email::\n+-e::\n+--email::\n \tShow the email address of each author.\n \n -w[<width>[,<indent1>[,<indent2>]]]::\ndiff --git a/Documentation/git-show-branch.txt b/Documentation/git-show-branch.txt\nindex 32595ad..de9e8f8 100644\n--- a/Documentation/git-show-branch.txt\n+++ b/Documentation/git-show-branch.txt\n@@ -38,10 +38,12 @@ OPTIONS\n \tbranches under $GIT_DIR/refs/heads/topic, giving\n \t`topic/*` would show all of them.\n \n--r|--remotes::\n+-r::\n+--remotes::\n \tShow the remote-tracking branches.\n \n--a|--all::\n+-a::\n+--all::\n \tShow both remote-tracking branches and local branches.\n \n --current::\ndiff --git a/Documentation/git-show-ref.txt b/Documentation/git-show-ref.txt\nindex a85332c..6b99529 100644\n--- a/Documentation/git-show-ref.txt\n+++ b/Documentation/git-show-ref.txt\n@@ -29,22 +29,26 @@ in the `.git` directory.\n OPTIONS\n -------\n \n--h, --head::\n+-h::\n+--head::\n \n \tShow the HEAD reference.\n \n---tags, --heads::\n+--tags::\n+--heads::\n \n \tLimit to only \"refs/heads\" and \"refs/tags\", respectively.  These\n \toptions are not mutually exclusive; when given both, references stored\n \tin \"refs/heads\" and \"refs/tags\" are displayed.\n \n--d, --dereference::\n+-d::\n+--dereference::\n \n \tDereference tags into object IDs as well. They will be shown with \"^{}\"\n \tappended.\n \n--s, --hash::\n+-s::\n+--hash::\n \n \tOnly show the SHA1 hash, not the reference name. When also using\n \t--dereference the dereferenced tag will still be shown after the SHA1.\n@@ -55,17 +59,20 @@ OPTIONS\n \tAside from returning an error code of 1, it will also print an error\n \tmessage if '--quiet' was not specified.\n \n---abbrev, --abbrev=len::\n+--abbrev::\n+--abbrev=len::\n \n \tAbbreviate the object name.  When using `--hash`, you do\n \tnot have to say `--hash --abbrev`; `--hash=len` would do.\n \n--q, --quiet::\n+-q::\n+--quiet::\n \n \tDo not print any results to stdout. When combined with '--verify' this\n \tcan be used to silently check if a reference exists.\n \n---exclude-existing, --exclude-existing=pattern::\n+--exclude-existing::\n+--exclude-existing=pattern::\n \n \tMake git-show-ref act as a filter that reads refs from stdin of the\n \tform \"^(?:<anything>\\s)?<refname>(?:\\^\\{\\})?$\" and performs the\ndiff --git a/Documentation/git-stripspace.txt b/Documentation/git-stripspace.txt\nindex 4883834..8421a39 100644\n--- a/Documentation/git-stripspace.txt\n+++ b/Documentation/git-stripspace.txt\n@@ -16,7 +16,8 @@ Remove multiple empty lines, and empty lines at beginning and end.\n \n OPTIONS\n -------\n--s|--strip-comments::\n+-s::\n+--strip-comments::\n \tIn addition to empty lines, also strip lines starting with '#'.\n \n <stream>::\ndiff --git a/Documentation/git-submodule.txt b/Documentation/git-submodule.txt\nindex 139206f..441ae14 100644\n--- a/Documentation/git-submodule.txt\n+++ b/Documentation/git-submodule.txt\n@@ -61,10 +61,12 @@ summary::\n \n OPTIONS\n -------\n--q, --quiet::\n+-q::\n+--quiet::\n \tOnly print error messages.\n \n--b, --branch::\n+-b::\n+--branch::\n \tBranch of repository to add as submodule.\n \n --cached::\n@@ -72,7 +74,8 @@ OPTIONS\n \tcommands typically use the commit found in the submodule HEAD, but\n \twith this option, the commit stored in the index is used instead.\n \n--n, --summary-limit::\n+-n::\n+--summary-limit::\n \tThis option is only valid for the summary command.\n \tLimit the summary size (number of commits shown in total).\n \tGiving 0 will disable the summary; a negative number means unlimited\ndiff --git a/Documentation/git-symbolic-ref.txt b/Documentation/git-symbolic-ref.txt\nindex e9b996b..3d3a059 100644\n--- a/Documentation/git-symbolic-ref.txt\n+++ b/Documentation/git-symbolic-ref.txt\n@@ -26,7 +26,8 @@ a regular file whose contents is `ref: refs/heads/master`.\n OPTIONS\n -------\n \n--q, --quiet::\n+-q::\n+--quiet::\n \tDo not issue an error message if the <name> is not a\n \tsymbolic ref but a detached HEAD; instead exit with\n \tnon-zero status silently.\ndiff --git a/Documentation/git-update-index.txt b/Documentation/git-update-index.txt\nindex c703365..bbb0a6a 100644\n--- a/Documentation/git-update-index.txt\n+++ b/Documentation/git-update-index.txt\n@@ -76,7 +76,8 @@ OPTIONS\n --chmod=(+|-)x::\n         Set the execute permissions on the updated files.\n \n---assume-unchanged, --no-assume-unchanged::\n+--assume-unchanged::\n+--no-assume-unchanged::\n \tWhen these flags are specified, the object name recorded\n \tfor the paths are not updated.  Instead, these options\n \tsets and unsets the \"assume unchanged\" bit for the\n@@ -88,7 +89,8 @@ OPTIONS\n \tfilesystem that has very slow lstat(2) system call\n \t(e.g. cifs).\n \n---again, -g::\n+-g::\n+--again::\n \tRuns `git-update-index` itself on the paths whose index\n \tentries are different from those from the `HEAD` commit.\n \ndiff --git a/Documentation/git-update-server-info.txt b/Documentation/git-update-server-info.txt\nindex aa1ee67..d21be41 100644\n--- a/Documentation/git-update-server-info.txt\n+++ b/Documentation/git-update-server-info.txt\n@@ -22,7 +22,8 @@ generates such auxiliary files.\n OPTIONS\n -------\n \n--f|--force::\n+-f::\n+--force::\n \tUpdate the info files from scratch.\n \n \ndiff --git a/Documentation/git-upload-pack.txt b/Documentation/git-upload-pack.txt\nindex 521da5b..bac465e 100644\n--- a/Documentation/git-upload-pack.txt\n+++ b/Documentation/git-upload-pack.txt\n@@ -24,10 +24,10 @@ repository.  For push operations, see 'git-send-pack'.\n OPTIONS\n -------\n \n-\\--strict::\n+--strict::\n \tDo not try <directory>/.git/ if <directory> is no git directory.\n \n-\\--timeout=<n>::\n+--timeout=<n>::\n \tInterrupt transfer after <n> seconds of inactivity.\n \n <directory>::\ndiff --git a/Documentation/git-web--browse.txt b/Documentation/git-web--browse.txt\nindex f8d5fb1..e80a7c1 100644\n--- a/Documentation/git-web--browse.txt\n+++ b/Documentation/git-web--browse.txt\n@@ -31,14 +31,17 @@ Custom commands may also be specified.\n \n OPTIONS\n -------\n--b BROWSER|--browser=BROWSER::\n+-b BROWSER::\n+--browser=BROWSER::\n \tUse the specified BROWSER. It must be in the list of supported\n \tbrowsers.\n \n--t BROWSER|--tool=BROWSER::\n+-t BROWSER::\n+--tool=BROWSER::\n \tSame as above.\n \n--c CONF.VAR|--config=CONF.VAR::\n+-c CONF.VAR::\n+--config=CONF.VAR::\n \tCONF.VAR is looked up in the git config files. If it's set,\n \tthen its value specify the browser that should be used.\n \ndiff --git a/Documentation/git.txt b/Documentation/git.txt\nindex ba07e51..763e70c 100644\n--- a/Documentation/git.txt\n+++ b/Documentation/git.txt\n@@ -137,7 +137,8 @@ help ...'.\n \tenvironment variable. If no path is given 'git' will print\n \tthe current setting and then exit.\n \n--p|--paginate::\n+-p::\n+--paginate::\n \tPipe all output into 'less' (or if set, $PAGER).\n \n --no-pager::\ndiff --git a/Documentation/gitk.txt b/Documentation/gitk.txt\nindex 14bcf91..f843f39 100644\n--- a/Documentation/gitk.txt\n+++ b/Documentation/gitk.txt\n@@ -25,7 +25,8 @@ To control which revisions to shown, the command takes options applicable to\n the linkgit:git-rev-list[1] command. This manual page describes only the most\n frequently used options.\n \n--n <number>, --max-count=<number>::\n+-n <number>::\n+--max-count=<number>::\n \n \tLimits the number of commits to show.\n \ndiff --git a/Documentation/merge-options.txt b/Documentation/merge-options.txt\nindex f37a776..ffbc6e9 100644\n--- a/Documentation/merge-options.txt\n+++ b/Documentation/merge-options.txt\n@@ -2,10 +2,12 @@\n \tShow a diffstat at the end of the merge. The diffstat is also\n \tcontrolled by the configuration option merge.stat.\n \n--n, \\--no-stat::\n+-n::\n+--no-stat::\n \tDo not show diffstat at the end of the merge.\n \n---summary, \\--no-summary::\n+--summary::\n+--no-summary::\n \tSynonyms to --stat and --no-stat; these are deprecated and will be\n \tremoved in the future.\n \n@@ -49,7 +51,8 @@\n \ta fast-forward, only update the branch pointer. This is\n \tthe default behavior of git-merge.\n \n--s <strategy>, \\--strategy=<strategy>::\n+-s <strategy>::\n+--strategy=<strategy>::\n \tUse the given merge strategy; can be supplied more than\n \tonce to specify them in the order they should be tried.\n \tIf there is no `-s` option, a built-in list of strategies\ndiff --git a/Documentation/rev-list-options.txt b/Documentation/rev-list-options.txt\nindex 05d5abe..37dd1d6 100644\n--- a/Documentation/rev-list-options.txt\n+++ b/Documentation/rev-list-options.txt\n@@ -129,7 +129,8 @@ limiting may be applied.\n \n --\n \n--n 'number', --max-count='number'::\n+-n 'number'::\n+--max-count='number'::\n \n \tLimit the number of commits output.\n \n@@ -137,21 +138,25 @@ limiting may be applied.\n \n \tSkip 'number' commits before starting to show the commit output.\n \n---since='date', --after='date'::\n+--since='date'::\n+--after='date'::\n \n \tShow commits more recent than a specific date.\n \n---until='date', --before='date'::\n+--until='date'::\n+--before='date'::\n \n \tShow commits older than a specific date.\n \n ifdef::git-rev-list[]\n---max-age='timestamp', --min-age='timestamp'::\n+--max-age='timestamp'::\n+--min-age='timestamp'::\n \n \tLimit the commits output to specified time range.\n endif::git-rev-list[]\n \n---author='pattern', --committer='pattern'::\n+--author='pattern'::\n+--committer='pattern'::\n \n \tLimit the commits output to ones with author/committer\n \theader lines that match the specified pattern (regular expression).\n@@ -161,16 +166,19 @@ endif::git-rev-list[]\n \tLimit the commits output to ones with log message that\n \tmatches the specified pattern (regular expression).\n \n--i, --regexp-ignore-case::\n+-i::\n+--regexp-ignore-case::\n \n \tMatch the regexp limiting patterns without regard to letters case.\n \n--E, --extended-regexp::\n+-E::\n+--extended-regexp::\n \n \tConsider the limiting patterns to be extended regular expressions\n \tinstead of the default basic regular expressions.\n \n--F, --fixed-strings::\n+-F::\n+--fixed-strings::\n \n \tConsider the limiting patterns to be fixed strings (don't interpret\n \tpattern as a regular expression).\n@@ -239,7 +247,8 @@ from the other branch (for example, \"3rd on b\" may be cherry-picked\n from branch A).  With this option, such pairs of commits are\n excluded from the output.\n \n--g, --walk-reflogs::\n+-g::\n+--walk-reflogs::\n \n \tInstead of walking the commit ancestry chain, walk\n \treflog entries from the most recent one to older ones.\n@@ -268,7 +277,8 @@ See also linkgit:git-reflog[1].\n \tOutput uninteresting commits at the boundary, which are usually\n \tnot shown.\n \n---dense, --sparse::\n+--dense::\n+--sparse::\n \n When optional paths are given, the default behaviour ('--dense') is to\n only output commits that changes at least one of them, and also ignore\n-- \n1.5.5.1\n"},{"id":"79084","messageId":"1212888972-29039-3-git-send-email-s-beyer@gmx.net","threadId":"13842","inReplyTo":"1212888972-29039-2-git-send-email-s-beyer@gmx.net","subject":"[PATCH 3/5] Docs: add some long/short options","fromName":"Stephan Beyer","fromEmail":"s-beyer@gmx.net","sentAt":"2008-06-08T01:36:10Z","receivedAt":"2008-06-08T01:36:10Z","isPatch":true,"sender":{"key":"s-beyer@gmx.net","avatar":"https://avatars.githubusercontent.com/u/143889?v=4"},"body":"Namely:\n git-clean.txt: --dry-run --quiet\n git-count-objects.txt: --verbose\n git-quiltimport.txt: -n\n git-remote.txt: -v --verbose\n\nSigned-off-by: Stephan Beyer <s-beyer@gmx.net>\n---\nHi,\n\nthis was a kind of semi-automated search to find the options that are not \ndocumented in the manual.\nBesides deprecated or unofficial ones, my search found those listed here\nand those from the following patches.\n\nRegards,\n  Stephan\n\nPS: Because the patches are so tiny, I didn't want to make several ones.\n\n Documentation/git-clean.txt         |    2 ++\n Documentation/git-count-objects.txt |    1 +\n Documentation/git-quiltimport.txt   |    2 ++\n Documentation/git-remote.txt        |   10 +++++++++-\n 4 files changed, 14 insertions(+), 1 deletions(-)\n\ndiff --git a/Documentation/git-clean.txt b/Documentation/git-clean.txt\nindex deebf3b..37a82ee 100644\n--- a/Documentation/git-clean.txt\n+++ b/Documentation/git-clean.txt\n@@ -30,9 +30,11 @@ OPTIONS\n \tgit-clean will refuse to run unless given -f or -n.\n \n -n::\n+--dry-run::\n \tDon't actually remove anything, just show what would be done.\n \n -q::\n+--quiet::\n \tBe quiet, only report errors, but not the files that are\n \tsuccessfully removed.\n \ndiff --git a/Documentation/git-count-objects.txt b/Documentation/git-count-objects.txt\nindex e1219b3..1ba85a2 100644\n--- a/Documentation/git-count-objects.txt\n+++ b/Documentation/git-count-objects.txt\n@@ -18,6 +18,7 @@ them, to help you decide when it is a good time to repack.\n OPTIONS\n -------\n -v::\n+--verbose::\n \tIn addition to the number of loose objects and disk\n \tspace consumed, it reports the number of in-pack\n \tobjects, number of packs, and number of objects that can be\ndiff --git a/Documentation/git-quiltimport.txt b/Documentation/git-quiltimport.txt\nindex d0bc182..0600379 100644\n--- a/Documentation/git-quiltimport.txt\n+++ b/Documentation/git-quiltimport.txt\n@@ -29,6 +29,8 @@ preserved as the 1 line subject in the git description.\n \n OPTIONS\n -------\n+\n+-n::\n --dry-run::\n \tWalk through the patches in the series and warn\n \tif we cannot find all of the necessary information to commit\ndiff --git a/Documentation/git-remote.txt b/Documentation/git-remote.txt\nindex e97dc09..782b055 100644\n--- a/Documentation/git-remote.txt\n+++ b/Documentation/git-remote.txt\n@@ -9,7 +9,7 @@ git-remote - manage set of tracked repositories\n SYNOPSIS\n --------\n [verse]\n-'git-remote'\n+'git-remote' [-v | --verbose]\n 'git-remote' add [-t <branch>] [-m <master>] [-f] [--mirror] <name> <url>\n 'git-remote' rm <name>\n 'git-remote' show <name>\n@@ -22,6 +22,14 @@ DESCRIPTION\n Manage the set of repositories (\"remotes\") whose branches you track.\n \n \n+OPTIONS\n+-------\n+\n+-v::\n+--verbose::\n+\tBe a little more verbose and show remote url after name.\n+\n+\n COMMANDS\n --------\n \n-- \n1.5.5.1\n"},{"id":"79086","messageId":"1212888972-29039-4-git-send-email-s-beyer@gmx.net","threadId":"13842","inReplyTo":"1212888972-29039-3-git-send-email-s-beyer@gmx.net","subject":"[PATCH 4/5] git-describe.txt: document --always","fromName":"Stephan Beyer","fromEmail":"s-beyer@gmx.net","sentAt":"2008-06-08T01:36:11Z","receivedAt":"2008-06-08T01:36:11Z","isPatch":true,"sender":{"key":"s-beyer@gmx.net","avatar":"https://avatars.githubusercontent.com/u/143889?v=4"},"body":"Signed-off-by: Stephan Beyer <s-beyer@gmx.net>\n---\nSee commit da2478dbb000436b79e813ba7f243d6042f26e66\n\n Documentation/git-describe.txt |    3 +++\n 1 files changed, 3 insertions(+), 0 deletions(-)\n\ndiff --git a/Documentation/git-describe.txt b/Documentation/git-describe.txt\nindex 3f0b7b2..9f6f483 100644\n--- a/Documentation/git-describe.txt\n+++ b/Documentation/git-describe.txt\n@@ -70,6 +70,9 @@ OPTIONS\n \tOnly consider tags matching the given pattern (can be used to avoid\n \tleaking private tags made from the repository).\n \n+--always::\n+\tShow uniquely abbreviated commit object as fallback.\n+\n EXAMPLES\n --------\n \n-- \n1.5.5.1\n"},{"id":"79085","messageId":"1212888972-29039-5-git-send-email-s-beyer@gmx.net","threadId":"13842","inReplyTo":"1212888972-29039-4-git-send-email-s-beyer@gmx.net","subject":"[PATCH 5/5] git-name-rev.txt: document --no-undefined and --always","fromName":"Stephan Beyer","fromEmail":"s-beyer@gmx.net","sentAt":"2008-06-08T01:36:12Z","receivedAt":"2008-06-08T01:36:12Z","isPatch":true,"sender":{"key":"s-beyer@gmx.net","avatar":"https://avatars.githubusercontent.com/u/143889?v=4"},"body":"Signed-off-by: Stephan Beyer <s-beyer@gmx.net>\n---\nSee commit 2cf9f445e9074df1a45f5179cef0d4bb8647dd8\n\n Documentation/git-name-rev.txt |    7 +++++++\n 1 files changed, 7 insertions(+), 0 deletions(-)\n\ndiff --git a/Documentation/git-name-rev.txt b/Documentation/git-name-rev.txt\nindex 12784d7..ffac3f8 100644\n--- a/Documentation/git-name-rev.txt\n+++ b/Documentation/git-name-rev.txt\n@@ -41,6 +41,13 @@ OPTIONS\n \tof linkgit:git-describe[1] more closely.  This option\n \tcannot be combined with --stdin.\n \n+--no-undefined::\n+\tDie with error code != 0 when a reference is undefined,\n+\tinstead of printing `undefined`.\n+\n+--always::\n+\tShow uniquely abbreviated commit object as fallback.\n+\n EXAMPLE\n -------\n \n-- \n1.5.5.1\n"},{"id":"79088","messageId":"484B37B6.1040408@freescale.com","threadId":"13842","inReplyTo":"1212836805-20684-1-git-send-email-s-beyer@gmx.net","subject":"Re: [PATCH v2] git-commit.txt: Correct option alternatives","fromName":"Jon Loeliger","fromEmail":"jdl@freescale.com","sentAt":"2008-06-08T01:36:54Z","receivedAt":"2008-06-08T01:36:54Z","isPatch":true,"sender":{"key":"jdl@jdl.com","avatar":"https://gravatar.com/avatar/75ce9a10b151acd2c28ec4ab2136dba7b2ff1634530bd04b155981a749d08a64?d=mp&s=160"},"body":"Stephan Beyer wrote:\n> This patch fixes the SYNOPSIS in git-commit.txt:\n>  * --amend is not an alternative option to -c/-C/-F/-m\n>  * -m and -F are not alternative options to -c/-C,\n>    because you can reuse authorship from a commit (-c/-C)\n>    but change the message (-m/-F).\n> \n> Furthermore, for long-option consistency --author <author>\n> is changed to --author=<author>.\n> \n> Signed-off-by: Stephan Beyer <s-beyer@gmx.net>\n\n\n> ---author <author>::\n> +--author=<author>::\n>  \tOverride the author name used in the commit.  Use\n>  \t`A U Thor <author@example.com>` format.\n>  \n\nHey Junio,\n\nSay, if we were to document and espouse one form over the other,\nwhich would you recommend or prefer?\n\njdl\n"},{"id":"79093","messageId":"20080608042356.GA11194@sigill.intra.peff.net","threadId":"13842","inReplyTo":"484B37B6.1040408@freescale.com","subject":"Re: [PATCH v2] git-commit.txt: Correct option alternatives","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2008-06-08T04:23:56Z","receivedAt":"2008-06-08T04:23:56Z","isPatch":true,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Sat, Jun 07, 2008 at 08:36:54PM -0500, Jon Loeliger wrote:\n\n>> Furthermore, for long-option consistency --author <author>\n>> is changed to --author=<author>.\n> Say, if we were to document and espouse one form over the other,\n> which would you recommend or prefer?\n\n$ sed -ne '/sticked/,/^$/p' Documentation/gitcli.txt\n * when a command line option takes an argument, use the 'sticked' form.  In\n   other words, write `\"git foo -oArg\"` instead of `\"git foo -o Arg\"` for short\n   options, and `\"git foo --long-opt=Arg\"` instead of `\"git foo --long-opt Arg\"`\n   for long options.  An option that takes optional option-argument must be\n   written in the 'sticked' form.\n\n'sticked' form must be used:\n----------------------------\n$ git describe --abbrev HEAD     # correct\n$ git describe --abbrev=10 HEAD  # correct\n$ git describe --abbrev 10 HEAD  # NOT WHAT YOU MEANT\n----------------------------\n\n-Peff\n"}]}