Repository: iterative/dvc

Issue:
standardize order of command options (flags) in help messages?
For example:

```console
$ dvc checkout -h
usage: dvc checkout [-h] [-q | -v] [-d] [-f] [-R] [targets [targets ...]]

...

optional arguments:
  -h, --help       show this help message and exit
  -q, --quiet      Be quiet.
  -v, --verbose    Be verbose.
  -d, --with-deps  Checkout all dependencies of the specified target.
  -f, --force      Do not prompt when removing working directory files.
  -R, --recursive  Checkout all subdirectories of the specified directory.
```

vs.

```console
$ dvc commit -h  
usage: dvc commit [-h] [-q | -v] [-f] [-d] [-R] [targets [targets ...]]

...

optional arguments:
  -h, --help       show this help message and exit
  -q, --quiet      Be quiet.
  -v, --verbose    Be verbose.
  -f, --force      Commit even if checksums for dependencies/outputs changed.
  -d, --with-deps  Commit all dependencies of the specified target.
  -R, --recursive  Commit cache for subdirectories of the specified directory.
```

- [ ] Having the same flags, their orders are `-d` `-f` `-R` vs `-f` `-d` `-R`,  respectively. Should have the same order?

- [ ] These commands have the general options `-h`, `-q`, `-v` displayed first and in that order like in most commands, except `dvc status -h`. Should fix?

- [ ] Find any other inconsistencies and fix them?


Discussion:
Hi @shcheklein, I would like to work on this issue, Thanks! 
Sure @vibhor98 ! I've assigned it to @schecklein just to make sure that no one takes it by mistake. Thanks a lot for looking into it! :slightly_smiling_face: 

Resolving patch:
diff --git a/dvc/command/checkout.py b/dvc/command/checkout.py
--- a/dvc/command/checkout.py
+++ b/dvc/command/checkout.py
@@ -31,18 +31,18 @@ def add_parser(subparsers, parent_parser):
         formatter_class=argparse.RawDescriptionHelpFormatter,
     )
     checkout_parser.add_argument(
-        "-d",
-        "--with-deps",
+        "-f",
+        "--force",
         action="store_true",
         default=False,
-        help="Checkout all dependencies of the specified target.",
+        help="Do not prompt when removing working directory files.",
     )
     checkout_parser.add_argument(
-        "-f",
-        "--force",
+        "-d",
+        "--with-deps",
         action="store_true",
         default=False,
-        help="Do not prompt when removing working directory files.",
+        help="Checkout all dependencies of the specified target.",
     )
     checkout_parser.add_argument(
         "-R",
diff --git a/dvc/command/data_sync.py b/dvc/command/data_sync.py
--- a/dvc/command/data_sync.py
+++ b/dvc/command/data_sync.py
@@ -157,18 +157,18 @@ def add_parser(subparsers, _parent_parser):
         help="Fetch cache for all tags.",
     )
     pull_parser.add_argument(
-        "-d",
-        "--with-deps",
+        "-f",
+        "--force",
         action="store_true",
         default=False,
-        help="Fetch cache for all dependencies of the specified target.",
+        help="Do not prompt when removing working directory files.",
     )
     pull_parser.add_argument(
-        "-f",
-        "--force",
+        "-d",
+        "--with-deps",
         action="store_true",
         default=False,
-        help="Do not prompt when removing working directory files.",
+        help="Fetch cache for all dependencies of the specified target.",
     )
     pull_parser.add_argument(
         "-R",


Test patch: