119625d8cSopenharmony_ciGit is an example of several common subcommand patterns.
219625d8cSopenharmony_ci
319625d8cSopenharmony_ciHelp:
419625d8cSopenharmony_ci```console
519625d8cSopenharmony_ci$ git
619625d8cSopenharmony_ci? failed
719625d8cSopenharmony_ciA fictional versioning CLI
819625d8cSopenharmony_ci
919625d8cSopenharmony_ciUsage: git[EXE] <COMMAND>
1019625d8cSopenharmony_ci
1119625d8cSopenharmony_ciCommands:
1219625d8cSopenharmony_ci  clone  Clones repos
1319625d8cSopenharmony_ci  diff   Compare two commits
1419625d8cSopenharmony_ci  push   pushes things
1519625d8cSopenharmony_ci  add    adds things
1619625d8cSopenharmony_ci  stash  
1719625d8cSopenharmony_ci  help   Print this message or the help of the given subcommand(s)
1819625d8cSopenharmony_ci
1919625d8cSopenharmony_ciOptions:
2019625d8cSopenharmony_ci  -h, --help  Print help
2119625d8cSopenharmony_ci
2219625d8cSopenharmony_ci$ git help
2319625d8cSopenharmony_ciA fictional versioning CLI
2419625d8cSopenharmony_ci
2519625d8cSopenharmony_ciUsage: git[EXE] <COMMAND>
2619625d8cSopenharmony_ci
2719625d8cSopenharmony_ciCommands:
2819625d8cSopenharmony_ci  clone  Clones repos
2919625d8cSopenharmony_ci  diff   Compare two commits
3019625d8cSopenharmony_ci  push   pushes things
3119625d8cSopenharmony_ci  add    adds things
3219625d8cSopenharmony_ci  stash  
3319625d8cSopenharmony_ci  help   Print this message or the help of the given subcommand(s)
3419625d8cSopenharmony_ci
3519625d8cSopenharmony_ciOptions:
3619625d8cSopenharmony_ci  -h, --help  Print help
3719625d8cSopenharmony_ci
3819625d8cSopenharmony_ci$ git help add
3919625d8cSopenharmony_ciadds things
4019625d8cSopenharmony_ci
4119625d8cSopenharmony_ciUsage: git[EXE] add <PATH>...
4219625d8cSopenharmony_ci
4319625d8cSopenharmony_ciArguments:
4419625d8cSopenharmony_ci  <PATH>...  Stuff to add
4519625d8cSopenharmony_ci
4619625d8cSopenharmony_ciOptions:
4719625d8cSopenharmony_ci  -h, --help  Print help
4819625d8cSopenharmony_ci
4919625d8cSopenharmony_ci```
5019625d8cSopenharmony_ci
5119625d8cSopenharmony_ciA basic argument:
5219625d8cSopenharmony_ci```console
5319625d8cSopenharmony_ci$ git add
5419625d8cSopenharmony_ci? failed
5519625d8cSopenharmony_ciadds things
5619625d8cSopenharmony_ci
5719625d8cSopenharmony_ciUsage: git[EXE] add <PATH>...
5819625d8cSopenharmony_ci
5919625d8cSopenharmony_ciArguments:
6019625d8cSopenharmony_ci  <PATH>...  Stuff to add
6119625d8cSopenharmony_ci
6219625d8cSopenharmony_ciOptions:
6319625d8cSopenharmony_ci  -h, --help  Print help
6419625d8cSopenharmony_ci
6519625d8cSopenharmony_ci$ git add Cargo.toml Cargo.lock
6619625d8cSopenharmony_ciAdding ["Cargo.toml", "Cargo.lock"]
6719625d8cSopenharmony_ci
6819625d8cSopenharmony_ci```
6919625d8cSopenharmony_ci
7019625d8cSopenharmony_ciDefault subcommand:
7119625d8cSopenharmony_ci```console
7219625d8cSopenharmony_ci$ git stash -h
7319625d8cSopenharmony_ciUsage: git[EXE] stash [OPTIONS]
7419625d8cSopenharmony_ci       git[EXE] stash <COMMAND>
7519625d8cSopenharmony_ci
7619625d8cSopenharmony_ciCommands:
7719625d8cSopenharmony_ci  push   
7819625d8cSopenharmony_ci  pop    
7919625d8cSopenharmony_ci  apply  
8019625d8cSopenharmony_ci  help   Print this message or the help of the given subcommand(s)
8119625d8cSopenharmony_ci
8219625d8cSopenharmony_ciOptions:
8319625d8cSopenharmony_ci  -m, --message <MESSAGE>  
8419625d8cSopenharmony_ci  -h, --help               Print help
8519625d8cSopenharmony_ci
8619625d8cSopenharmony_ci$ git stash push -h
8719625d8cSopenharmony_ciUsage: git[EXE] stash push [OPTIONS]
8819625d8cSopenharmony_ci
8919625d8cSopenharmony_ciOptions:
9019625d8cSopenharmony_ci  -m, --message <MESSAGE>  
9119625d8cSopenharmony_ci  -h, --help               Print help
9219625d8cSopenharmony_ci
9319625d8cSopenharmony_ci$ git stash pop -h
9419625d8cSopenharmony_ciUsage: git[EXE] stash pop [STASH]
9519625d8cSopenharmony_ci
9619625d8cSopenharmony_ciArguments:
9719625d8cSopenharmony_ci  [STASH]  
9819625d8cSopenharmony_ci
9919625d8cSopenharmony_ciOptions:
10019625d8cSopenharmony_ci  -h, --help  Print help
10119625d8cSopenharmony_ci
10219625d8cSopenharmony_ci$ git stash -m "Prototype"
10319625d8cSopenharmony_ciPushing Some("Prototype")
10419625d8cSopenharmony_ci
10519625d8cSopenharmony_ci$ git stash pop
10619625d8cSopenharmony_ciPopping None
10719625d8cSopenharmony_ci
10819625d8cSopenharmony_ci$ git stash push -m "Prototype"
10919625d8cSopenharmony_ciPushing Some("Prototype")
11019625d8cSopenharmony_ci
11119625d8cSopenharmony_ci$ git stash pop
11219625d8cSopenharmony_ciPopping None
11319625d8cSopenharmony_ci
11419625d8cSopenharmony_ci```
11519625d8cSopenharmony_ci
11619625d8cSopenharmony_ciExternal subcommands:
11719625d8cSopenharmony_ci```console
11819625d8cSopenharmony_ci$ git custom-tool arg1 --foo bar
11919625d8cSopenharmony_ciCalling out to "custom-tool" with ["arg1", "--foo", "bar"]
12019625d8cSopenharmony_ci
12119625d8cSopenharmony_ci```
12219625d8cSopenharmony_ci
12319625d8cSopenharmony_ciLast argument:
12419625d8cSopenharmony_ci```console
12519625d8cSopenharmony_ci$ git diff --help
12619625d8cSopenharmony_ciCompare two commits
12719625d8cSopenharmony_ci
12819625d8cSopenharmony_ciUsage: git[EXE] diff [OPTIONS] [COMMIT] [COMMIT] [-- <PATH>]
12919625d8cSopenharmony_ci
13019625d8cSopenharmony_ciArguments:
13119625d8cSopenharmony_ci  [COMMIT]  
13219625d8cSopenharmony_ci  [COMMIT]  
13319625d8cSopenharmony_ci  [PATH]    
13419625d8cSopenharmony_ci
13519625d8cSopenharmony_ciOptions:
13619625d8cSopenharmony_ci      --color[=<WHEN>]  [default: auto] [possible values: always, auto, never]
13719625d8cSopenharmony_ci  -h, --help            Print help
13819625d8cSopenharmony_ci
13919625d8cSopenharmony_ci$ git diff
14019625d8cSopenharmony_ciDiffing stage..worktree  (color=auto)
14119625d8cSopenharmony_ci
14219625d8cSopenharmony_ci$ git diff ./src
14319625d8cSopenharmony_ciDiffing stage..worktree ./src (color=auto)
14419625d8cSopenharmony_ci
14519625d8cSopenharmony_ci$ git diff HEAD ./src
14619625d8cSopenharmony_ciDiffing HEAD..worktree ./src (color=auto)
14719625d8cSopenharmony_ci
14819625d8cSopenharmony_ci$ git diff HEAD~~ -- HEAD
14919625d8cSopenharmony_ciDiffing HEAD~~..worktree HEAD (color=auto)
15019625d8cSopenharmony_ci
15119625d8cSopenharmony_ci$ git diff --color
15219625d8cSopenharmony_ciDiffing stage..worktree  (color=always)
15319625d8cSopenharmony_ci
15419625d8cSopenharmony_ci$ git diff --color=never
15519625d8cSopenharmony_ciDiffing stage..worktree  (color=never)
15619625d8cSopenharmony_ci
15719625d8cSopenharmony_ci```
158