|
1 | 1 | ## Unreleased |
2 | 2 |
|
| 3 | +### CLI Arguments — POSIX-style Syntax |
| 4 | + |
| 5 | +The command-line interface has been migrated from Windows-style (`/switch` and single-dash `-switch`) arguments to POSIX-style `--long-name` arguments using [System.CommandLine](https://github.com/dotnet/command-line-api). |
| 6 | + |
| 7 | +**Old-style arguments are no longer accepted by default.** Update any scripts, CI pipelines, or tooling accordingly. |
| 8 | + |
| 9 | +As a temporary migration aid, set the environment variable `USE_V6_ARGUMENT_PARSER=true` to restore the legacy `/switch` and `-switch` argument handling. This escape hatch will be removed in a future release. |
| 10 | + |
| 11 | +#### Full argument mapping |
| 12 | + |
| 13 | +| Old argument | New argument | Short alias | Env var alternative | |
| 14 | +| ----------------------------- | -------------------------------- | ------------------------------ | ---------------------------- | |
| 15 | +| `/targetpath <path>` | `--target-path <path>` | _(positional `path` argument)_ | | |
| 16 | +| `/output <type>` | `--output <type>` | `-o` | | |
| 17 | +| `/outputfile <path>` | `--output-file <path>` | | | |
| 18 | +| `/showvariable <var>` | `--show-variable <var>` | `-v` | | |
| 19 | +| `/format <format>` | `--format <format>` | `-f` | | |
| 20 | +| `/config <path>` | `--config <path>` | `-c` | | |
| 21 | +| `/showconfig` | `--show-config` | | | |
| 22 | +| `/overrideconfig <k=v>` | `--override-config <k=v>` | | | |
| 23 | +| `/nocache` | `--no-cache` | | | |
| 24 | +| `/nofetch` | `--no-fetch` | | | |
| 25 | +| `/nonormalize` | `--no-normalize` | | | |
| 26 | +| `/allowshallow` | `--allow-shallow` | | | |
| 27 | +| `/verbosity <level>` | `--verbosity <level>` | | | |
| 28 | +| `/l <path>` | `--log-file <path>` | `-l` | | |
| 29 | +| `/diag` | `--diagnose` | `-d` | | |
| 30 | +| `/updateassemblyinfo [files]` | `--update-assembly-info [files]` | | | |
| 31 | +| `/updateprojectfiles [files]` | `--update-project-files [files]` | | | |
| 32 | +| `/ensureassemblyinfo` | `--ensure-assembly-info` | | | |
| 33 | +| `/updatewixversionfile` | `--update-wix-version-file` | | | |
| 34 | +| `/url <url>` | `--url <url>` | | | |
| 35 | +| `/b <branch>` | `--branch <branch>` | `-b` | | |
| 36 | +| `/u <username>` | `--username <username>` | `-u` | `GITVERSION_REMOTE_USERNAME` | |
| 37 | +| `/p <password>` | `--password <password>` | `-p` | `GITVERSION_REMOTE_PASSWORD` | |
| 38 | +| `/c <commit>` | `--commit <commit>` | _(no short alias)_ | | |
| 39 | +| `/dynamicRepoLocation <path>` | `--dynamic-repo-location <path>` | | | |
| 40 | + |
| 41 | +> **Critical**: `-c` previously referred to the commit id. It is now aliased to `--config` (config file path). Any usage of `-c <commit-id>` must be changed to `--commit <commit-id>`. |
| 42 | +
|
| 43 | +The `GITVERSION_REMOTE_USERNAME` and `GITVERSION_REMOTE_PASSWORD` environment variables can be used as alternatives to `--username` and `--password`. Environment variables take lower precedence than explicit CLI arguments. |
| 44 | + |
3 | 45 | ### Logging System Replacement |
4 | 46 |
|
5 | 47 | * The custom `ILog` logging abstraction has been replaced with the industry-standard `Microsoft.Extensions.Logging` (M.E.L.) infrastructure using Serilog as the underlying provider. |
|
0 commit comments