Repository navigation
fix(config): enable file include in scoped queries - #2345
Conversation
|
@becm Thanks for identifying this key piece that connects to several issues. Could you add a test to demonstrate the behavior change to prevent regressions in the future? |
|
@derrickstolee sadly only the 1st step, since:
|
|
@derrickstolee since the Will try to implement a test for (abstract) config data with the (hopefully) resolved corner case of |
|
Reverted PR to primary goal, will tackle @derrickstolee I'll try to add a test for file inclusion (global scope). |
This comment was marked as spam.
This comment was marked as spam.
|
@mjcheetham any further actions to be taken to accept this? This change will essentially harmonizes behavior before and after |
|
@derrickstolee it seems Would it be possible to introduce a further code path for This would be an extension or (for non-ancient Git versions) a replacement for the current PR. |
|
The way I read this change, it constitutes a change of behavior. A good one, granted, but one that has a high potential of affecting existing users' setups (especially complex setups). As such, I'd be much more comfortable to make this behavioral change part of a major version bump. Seeing as v3.x is starting to take concrete shape, I would consider that version to be the natural inflection point to integrate this here PR. |
|
@dscho behavior change already happened for This combination effectively uses |
@becm sure, but the way I see it was that this was an inadvertent behavioral change. Here, we are aware of the change. That makes a huge difference. |
|
@dscho the problem is inconsistent behavior when different Git versions are involved. So a "bugfix" is to intentionally lean into the (unintended) change. If adding config cache did not enforce |
|
Now that |
|
If there is serious intent to merge, I'd invest work to submit a better (more extensive) approach.
Only using The approach using |
|
Revised for
|
|
@becm thank you for rebasing! @mjcheetham and I should be able to focus on getting this merged this coming week. |
mjcheetham
left a comment
There was a problem hiding this comment.
Looking good so far, but a few issues at the moment.
redirect global config location test special conditional global include based on local Git remote value verify unconditional include directive for local scope
split Git version checks for support of "raw" and "typed" config listing use compatible argument to create config listing in older Git versions drop `--no-type` for Raw values (default) to support older Git versions
match query results of `ConfigCache` as close as possible
c9cf891 to
228be3d
Compare
mjcheetham
left a comment
There was a problem hiding this comment.
Thanks for persisting with this!
…nager to v3 (#981) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github:git-ecosystem/git-credential-manager](https://redirect.github.com/git-ecosystem/git-credential-manager) | tools | major | `v2.9.1` → `v3.0.1` | --- ### Release Notes <details> <summary>git-ecosystem/git-credential-manager (github:git-ecosystem/git-credential-manager)</summary> ### [`v3.0.1`](https://redirect.github.com/git-ecosystem/git-credential-manager/releases/tag/v3.0.1): GCM 3.0.1 [Compare Source](https://redirect.github.com/git-ecosystem/git-credential-manager/compare/v3.0.0...v3.0.1) Git Credential Manager 3.0 brings native ahead-of-time compilation, Microsoft authentication broker support across Windows, macOS, and Linux, and a refreshed terminal experience. ### Changes since 3.0.0 - **(Bug fix)** Prompt for default OS account on Microsoft DevBox ([#​2459](https://redirect.github.com/git-ecosystem/git-credential-manager/issues/2459)) - **(Bug fix)** Restore Entra broker parent window handling ([#​2464](https://redirect.github.com/git-ecosystem/git-credential-manager/issues/2464)) - **(Feature)** Support `authtype` Git capability ([#​2457](https://redirect.github.com/git-ecosystem/git-credential-manager/issues/2457)) - **(Feature)** Add console parent window parenting for non-Entra UI ([#​2465](https://redirect.github.com/git-ecosystem/git-credential-manager/issues/2465)) - Drop Windows x86 release binaries ([#​2456](https://redirect.github.com/git-ecosystem/git-credential-manager/issues/2456)) **Changelog:** [v3.0.0...v3.0.1][point1-changelog] ### Changes since 2.9.1 > \[!IMPORTANT] > This release changes supported operating systems and the default Azure Repos authentication experience. Review the breaking changes before upgrading. #### Breaking changes and upgrade notes ##### Updated platform and .NET requirements GCM now targets **.NET 10 on all platforms**. Windows builds no longer use .NET Framework. | Platform or installation method | Requirement | | ------------------------------- | --------------------------------------------------------- | | Windows | Windows 10 or later; Windows Server 2016 or later | | macOS | macOS 14 or later | | Linux | A distribution supported by .NET 10 | | .NET tool | Install the .NET 10 SDK before installing or updating GCM | See the [supported environments][supported-environments] and [.NET 10 support matrix][dotnet-support] for details. Standalone platform packages do **not** require a separate .NET installation. **Windows 7 and Windows 8.x are no longer supported by GCM 3.x.** GCM 2.9.x will receive minimal, security-only maintenance for those systems, but no new features. Upgrading Windows is recommended. ([git-ecosystem/git-credential-manager#2365][pr-2365], [git-ecosystem/git-credential-manager#2367][pr-2367]) ##### Azure Repos uses OAuth tokens by default GCM now returns Microsoft identity **OAuth tokens**, rather than creating personal access tokens (PATs), by default for Azure Repos. OAuth tokens are automatically refreshed as needed. Explicit credential-type settings are still respected. If you need the previous PAT behavior, set: ```shell git config --global credential.azreposCredentialType pat ``` The equivalent environment variable is `GCM_AZREPOS_CREDENTIALTYPE=pat`. See [Azure Repos users and tokens][azrepos-tokens]. ([git-ecosystem/git-credential-manager#2449][pr-2449]) ##### Microsoft authentication uses the OS broker by default Broker integration is now enabled by default wherever supported, rather than requiring an opt-in. This applies to Microsoft authentication, such as Azure Repos; it does not change authentication for GitHub, Bitbucket, or GitLab. On macOS, broker authentication requires Company Portal and device enrollment. On Linux, it requires the supported Intune setup, a GNOME desktop, and Microsoft Edge; headless and WSL environments do not support the Linux broker. > \[!WARNING] > Depending on your organization's policies, broker sign-in can prompt you to join or enroll your device. On Windows, signing in with a personal Microsoft account can also affect the account linked to your local Windows user. Review the [broker documentation][broker] before proceeding, especially on personal devices. To opt out: ```shell git config --global credential.msauthUseBroker false ``` The equivalent environment variable is `GCM_MSAUTH_USEBROKER=false`. When the broker is in use, it takes precedence over `credential.msauthFlow`. ([git-ecosystem/git-credential-manager#2449][pr-2449]) ##### Azure Repos uses a dedicated GCM Entra application GCM now signs in using its own first-party Microsoft Entra application instead of the Visual Studio application. This enables broker support on macOS and Linux, in addition to Windows. If you encounter a client-application configuration error, GCM provides guidance for retrying with the legacy application; it does **not** silently switch back. For a one-command compatibility retry: ```shell git -c credential.azreposUseLegacyClientId=true fetch ``` Please report the original failure if this workaround succeeds. The legacy application does not support broker authentication on macOS or Linux. Managed identity, service-principal, and workload-identity federation flows are unaffected by the application change. The undocumented developer overrides `credential.azreposDevClientId` and `credential.azreposDevAuthorityBaseUri`, and their environment-variable equivalents `GCM_DEV_AZREPOS_CLIENTID` and `GCM_DEV_AZREPOS_AUTHORITYBASEURI`, have been removed. The [legacy-client setting][legacy-client] is a focused compatibility option, not an arbitrary client-ID or authority override. ([git-ecosystem/git-credential-manager#2416][pr-2416]) ##### The embedded Microsoft sign-in web view has been removed The Windows-only embedded web view depended on .NET Framework and is no longer available. Use the broker, system browser, or device-code flow instead. If you previously forced `credential.msauthFlow=embedded` or `GCM_MSAUTH_FLOW=embedded`, change it to `auto`, `system`, or `devicecode`. Disable broker integration as described above if you specifically need to force a non-broker flow. ([git-ecosystem/git-credential-manager#2365][pr-2365]) ##### Terminal and diagnostic output has changed Terminal selection prompts now use arrow-key navigation instead of numbered input, and `diagnose` has a new output format. Automation that drives interactive menus or parses diagnostic text may need updating. Git's credential-protocol input and output remain separate from interactive prompts. ([git-ecosystem/git-credential-manager#2377][pr-2377], [git-ecosystem/git-credential-manager#2425][pr-2425]) #### Features and improvements - **Native ahead-of-time builds.** Published platform packages compile GCM to native code to reduce startup overhead. The .NET tool remains a framework-dependent distribution. ([git-ecosystem/git-credential-manager#2366][pr-2366], [git-ecosystem/git-credential-manager#2367][pr-2367]) - **Cross-platform Microsoft single sign-on.** The authentication broker can reuse OS accounts on supported Windows, macOS, and Linux installations. When a default OS account can be used, GCM asks for confirmation unless automatic use is explicitly enabled, or enabled by default in environments such as Microsoft Dev Box. Set `credential.msauthUseDefaultAccount=false` to skip the default-account attempt. See the [broker documentation][broker]. ([git-ecosystem/git-credential-manager#2379][pr-2379], [git-ecosystem/git-credential-manager#2416][pr-2416]) - **Optional isolated Azure Repos token cache.** Set `credential.azreposUseMicrosoftSharedCache=false`, or `GCM_AZREPOS_USE_MSFT_CACHE=false`, to use a GCM-specific cache. Sharing with other Microsoft developer tools remains the default. ([git-ecosystem/git-credential-manager#2415][pr-2415]) - **Support for Bitbucket Cloud's updated OAuth tokens.** Rotating refresh tokens are now consistently saved against the resolved Bitbucket username, avoiding repeated sign-ins caused by reusing an old refresh token. Large access and refresh tokens are split across credential entries when needed, so Windows users can keep the default `wincredman` store without switching to another credential store. ([git-ecosystem/git-credential-manager#2433][pr-2433], [git-ecosystem/git-credential-manager#2440][pr-2440]) - **Generic OAuth beyond HTTP(S).** Generic OAuth configuration now works for non-HTTP credential requests, such as SMTP authentication for `git send-email`. Windows Integrated Authentication remains HTTP(S)-only. ([git-ecosystem/git-credential-manager#2445][pr-2445]) - **Refreshed terminal prompts and diagnostics.** Interactive prompts use Spectre.Console, and Ctrl+C during a prompt restores the terminal and exits cleanly with status 130. `git-credential-manager diagnose` distinguishes passed, warning, failed, and skipped checks, reports the actual credential store, and summarizes generated logs. Add `--strict` to return a non-zero exit code for warnings as well as errors; without it, only errors fail. ([git-ecosystem/git-credential-manager#2377][pr-2377], [git-ecosystem/git-credential-manager#2423][pr-2423], [git-ecosystem/git-credential-manager#2425][pr-2425]) - **More complete Trace2 diagnostics.** Expanded instrumentation covers command execution, configuration, credential storage, UI startup, and authentication. Entra tracing now records broker, cache, and interaction-mode decisions alongside timings, using the existing Git Trace2 settings. ([git-ecosystem/git-credential-manager#2408][pr-2408], [git-ecosystem/git-credential-manager#2450][pr-2450]) - **Newer Git credential-protocol support.** GCM supports capability negotiation and the `state[]` and `continue` fields introduced in Git 2.46, providing infrastructure for multi-stage authentication. Existing authentication flows and compatibility with older Git versions are preserved. ([git-ecosystem/git-credential-manager#2357][pr-2357]) #### Fixes - Improve dispatcher failure and shutdown handling without starting the UI framework for operations that do not need it. ([git-ecosystem/git-credential-manager#2451][pr-2451]) - Respect Git configuration `include` and `includeIf` files in scoped queries, avoiding duplicate configuration entries when settings already exist in an included file. ([git-ecosystem/git-credential-manager#2345][pr-2345]) #### Installation and contributor changes - The install-from-source helper now supports both macOS and Linux at `build/install-from-source.sh`. It defaults to a trimmed, self-contained build; use `--aot` to opt into native compilation and its additional toolchain requirements. See the [installation instructions][install-from-source]. - Source builds now use `git-credential-manager.slnx`, with libraries and tests directly under `src/` and packaging scripts under `build/`. A solution build no longer runs packaging; use the per-platform distribution projects for that. See the [development guide][development]. ([git-ecosystem/git-credential-manager#2367][pr-2367]) - Windows x64 and ARM64 packages use the 64-bit Inno Setup installer; x86 packages retain a 32-bit installer. ([git-ecosystem/git-credential-manager#2380][pr-2380]) - Internal credential-helper actions (`get`, `store`, `erase`, and `capability`) are hidden from `--help`, but remain available for Git to invoke. ([git-ecosystem/git-credential-manager#2357][pr-2357]) **Changelog:** [v2.9.1...v3.0.0][full-changelog] [point1-changelog]: https://redirect.github.com/git-ecosystem/git-credential-manager/compare/v3.0.0...v3.0.1 [azrepos-tokens]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.1/docs/azrepos-users-and-tokens.md [broker]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.1/docs/msauth-broker.md [development]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.1/docs/development.md [dotnet-support]: https://redirect.github.com/dotnet/core/blob/main/release-notes/10.0/supported-os.md [full-changelog]: https://redirect.github.com/git-ecosystem/git-credential-manager/compare/v2.9.1...v3.0.0 [install-from-source]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.1/docs/install.md#install-from-source-helper-script [legacy-client]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.1/docs/configuration.md#credentialazreposuselegacyclientid [supported-environments]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.1/README.md#supported-environments [pr-2345]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2345 [pr-2357]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2357 [pr-2365]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2365 [pr-2366]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2366 [pr-2367]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2367 [pr-2377]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2377 [pr-2379]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2379 [pr-2380]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2380 [pr-2408]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2408 [pr-2415]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2415 [pr-2416]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2416 [pr-2423]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2423 [pr-2425]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2425 [pr-2433]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2433 [pr-2440]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2440 [pr-2445]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2445 [pr-2449]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2449 [pr-2450]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2450 [pr-2451]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2451 ### [`v3.0.0`](https://redirect.github.com/git-ecosystem/git-credential-manager/releases/tag/v3.0.0): GCM 3.0.0 [Compare Source](https://redirect.github.com/git-ecosystem/git-credential-manager/compare/v2.9.1...v3.0.0) Git Credential Manager 3.0 brings native ahead-of-time compilation, Microsoft authentication broker support across Windows, macOS, and Linux, and a refreshed terminal experience. These notes cover changes since **GCM 2.9.1**. > \[!IMPORTANT] > This release changes supported operating systems and the default Azure Repos authentication experience. Review the breaking changes before upgrading. #### Breaking changes and upgrade notes ##### Updated platform and .NET requirements GCM now targets **.NET 10 on all platforms**. Windows builds no longer use .NET Framework. | Platform or installation method | Requirement | | ------------------------------- | --------------------------------------------------------- | | Windows | Windows 10 or later; Windows Server 2016 or later | | macOS | macOS 14 or later | | Linux | A distribution supported by .NET 10 | | .NET tool | Install the .NET 10 SDK before installing or updating GCM | See the [supported environments][supported-environments] and [.NET 10 support matrix][dotnet-support] for details. Standalone platform packages do **not** require a separate .NET installation. **Windows 7 and Windows 8.x are no longer supported by GCM 3.x.** GCM 2.9.x will receive minimal, security-only maintenance for those systems, but no new features. Upgrading Windows is recommended. ([git-ecosystem/git-credential-manager#2365][pr-2365], [git-ecosystem/git-credential-manager#2367][pr-2367]) ##### Azure Repos uses OAuth tokens by default GCM now returns Microsoft identity **OAuth tokens**, rather than creating personal access tokens (PATs), by default for Azure Repos. OAuth tokens are automatically refreshed as needed. Explicit credential-type settings are still respected. If you need the previous PAT behavior, set: ```shell git config --global credential.azreposCredentialType pat ``` The equivalent environment variable is `GCM_AZREPOS_CREDENTIALTYPE=pat`. See [Azure Repos users and tokens][azrepos-tokens]. ([git-ecosystem/git-credential-manager#2449][pr-2449]) ##### Microsoft authentication uses the OS broker by default Broker integration is now enabled by default wherever supported, rather than requiring an opt-in. This applies to Microsoft authentication, such as Azure Repos; it does not change authentication for GitHub, Bitbucket, or GitLab. On macOS, broker authentication requires Company Portal and device enrollment. On Linux, it requires the supported Intune setup, a GNOME desktop, and Microsoft Edge; headless and WSL environments do not support the Linux broker. > \[!WARNING] > Depending on your organization's policies, broker sign-in can prompt you to join or enroll your device. On Windows, signing in with a personal Microsoft account can also affect the account linked to your local Windows user. Review the [broker documentation][broker] before proceeding, especially on personal devices. To opt out: ```shell git config --global credential.msauthUseBroker false ``` The equivalent environment variable is `GCM_MSAUTH_USEBROKER=false`. When the broker is in use, it takes precedence over `credential.msauthFlow`. ([git-ecosystem/git-credential-manager#2449][pr-2449]) ##### Azure Repos uses a dedicated GCM Entra application GCM now signs in using its own first-party Microsoft Entra application instead of the Visual Studio application. This enables broker support on macOS and Linux, in addition to Windows. If you encounter a client-application configuration error, GCM provides guidance for retrying with the legacy application; it does **not** silently switch back. For a one-command compatibility retry: ```shell git -c credential.azreposUseLegacyClientId=true fetch ``` Please report the original failure if this workaround succeeds. The legacy application does not support broker authentication on macOS or Linux. Managed identity, service-principal, and workload-identity federation flows are unaffected by the application change. The undocumented developer overrides `credential.azreposDevClientId` and `credential.azreposDevAuthorityBaseUri`, and their environment-variable equivalents `GCM_DEV_AZREPOS_CLIENTID` and `GCM_DEV_AZREPOS_AUTHORITYBASEURI`, have been removed. The [legacy-client setting][legacy-client] is a focused compatibility option, not an arbitrary client-ID or authority override. ([git-ecosystem/git-credential-manager#2416][pr-2416]) ##### The embedded Microsoft sign-in web view has been removed The Windows-only embedded web view depended on .NET Framework and is no longer available. Use the broker, system browser, or device-code flow instead. If you previously forced `credential.msauthFlow=embedded` or `GCM_MSAUTH_FLOW=embedded`, change it to `auto`, `system`, or `devicecode`. Disable broker integration as described above if you specifically need to force a non-broker flow. ([git-ecosystem/git-credential-manager#2365][pr-2365]) ##### Terminal and diagnostic output has changed Terminal selection prompts now use arrow-key navigation instead of numbered input, and `diagnose` has a new output format. Automation that drives interactive menus or parses diagnostic text may need updating. Git's credential-protocol input and output remain separate from interactive prompts. ([git-ecosystem/git-credential-manager#2377][pr-2377], [git-ecosystem/git-credential-manager#2425][pr-2425]) #### Features and improvements - **Native ahead-of-time builds.** Published platform packages compile GCM to native code to reduce startup overhead. The .NET tool remains a framework-dependent distribution. ([git-ecosystem/git-credential-manager#2366][pr-2366], [git-ecosystem/git-credential-manager#2367][pr-2367]) - **Cross-platform Microsoft single sign-on.** The authentication broker can reuse OS accounts on supported Windows, macOS, and Linux installations. When a default OS account can be used, GCM asks for confirmation unless automatic use is explicitly enabled, or enabled by default in environments such as Microsoft Dev Box. Set `credential.msauthUseDefaultAccount=false` to skip the default-account attempt. See the [broker documentation][broker]. ([git-ecosystem/git-credential-manager#2379][pr-2379], [git-ecosystem/git-credential-manager#2416][pr-2416]) - **Optional isolated Azure Repos token cache.** Set `credential.azreposUseMicrosoftSharedCache=false`, or `GCM_AZREPOS_USE_MSFT_CACHE=false`, to use a GCM-specific cache. Sharing with other Microsoft developer tools remains the default. ([git-ecosystem/git-credential-manager#2415][pr-2415]) - **Support for Bitbucket Cloud's updated OAuth tokens.** Rotating refresh tokens are now consistently saved against the resolved Bitbucket username, avoiding repeated sign-ins caused by reusing an old refresh token. Large access and refresh tokens are split across credential entries when needed, so Windows users can keep the default `wincredman` store without switching to another credential store. ([git-ecosystem/git-credential-manager#2433][pr-2433], [git-ecosystem/git-credential-manager#2440][pr-2440]) - **Generic OAuth beyond HTTP(S).** Generic OAuth configuration now works for non-HTTP credential requests, such as SMTP authentication for `git send-email`. Windows Integrated Authentication remains HTTP(S)-only. ([git-ecosystem/git-credential-manager#2445][pr-2445]) - **Refreshed terminal prompts and diagnostics.** Interactive prompts use Spectre.Console, and Ctrl+C during a prompt restores the terminal and exits cleanly with status 130. `git-credential-manager diagnose` distinguishes passed, warning, failed, and skipped checks, reports the actual credential store, and summarizes generated logs. Add `--strict` to return a non-zero exit code for warnings as well as errors; without it, only errors fail. ([git-ecosystem/git-credential-manager#2377][pr-2377], [git-ecosystem/git-credential-manager#2423][pr-2423], [git-ecosystem/git-credential-manager#2425][pr-2425]) - **More complete Trace2 diagnostics.** Expanded instrumentation covers command execution, configuration, credential storage, UI startup, and authentication. Entra tracing now records broker, cache, and interaction-mode decisions alongside timings, using the existing Git Trace2 settings. ([git-ecosystem/git-credential-manager#2408][pr-2408], [git-ecosystem/git-credential-manager#2450][pr-2450]) - **Newer Git credential-protocol support.** GCM supports capability negotiation and the `state[]` and `continue` fields introduced in Git 2.46, providing infrastructure for multi-stage authentication. Existing authentication flows and compatibility with older Git versions are preserved. ([git-ecosystem/git-credential-manager#2357][pr-2357]) #### Fixes - Improve dispatcher failure and shutdown handling without starting the UI framework for operations that do not need it. ([git-ecosystem/git-credential-manager#2451][pr-2451]) - Respect Git configuration `include` and `includeIf` files in scoped queries, avoiding duplicate configuration entries when settings already exist in an included file. ([git-ecosystem/git-credential-manager#2345][pr-2345]) #### Installation and contributor changes - The install-from-source helper now supports both macOS and Linux at `build/install-from-source.sh`. It defaults to a trimmed, self-contained build; use `--aot` to opt into native compilation and its additional toolchain requirements. See the [installation instructions][install-from-source]. - Source builds now use `git-credential-manager.slnx`, with libraries and tests directly under `src/` and packaging scripts under `build/`. A solution build no longer runs packaging; use the per-platform distribution projects for that. See the [development guide][development]. ([git-ecosystem/git-credential-manager#2367][pr-2367]) - Windows x64 and ARM64 packages use the 64-bit Inno Setup installer; x86 packages retain a 32-bit installer. ([git-ecosystem/git-credential-manager#2380][pr-2380]) - Internal credential-helper actions (`get`, `store`, `erase`, and `capability`) are hidden from `--help`, but remain available for Git to invoke. ([git-ecosystem/git-credential-manager#2357][pr-2357]) **Full changelog:** [v2.9.1...v3.0.0][full-changelog] [azrepos-tokens]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.0/docs/azrepos-users-and-tokens.md [broker]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.0/docs/msauth-broker.md [development]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.0/docs/development.md [dotnet-support]: https://redirect.github.com/dotnet/core/blob/main/release-notes/10.0/supported-os.md [full-changelog]: https://redirect.github.com/git-ecosystem/git-credential-manager/compare/v2.9.1...v3.0.0 [install-from-source]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.0/docs/install.md#install-from-source-helper-script [legacy-client]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.0/docs/configuration.md#credentialazreposuselegacyclientid [supported-environments]: https://redirect.github.com/git-ecosystem/git-credential-manager/blob/v3.0.0/README.md#supported-environments [pr-2345]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2345 [pr-2357]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2357 [pr-2365]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2365 [pr-2366]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2366 [pr-2367]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2367 [pr-2377]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2377 [pr-2379]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2379 [pr-2380]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2380 [pr-2408]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2408 [pr-2415]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2415 [pr-2416]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2416 [pr-2423]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2423 [pr-2425]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2425 [pr-2433]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2433 [pr-2440]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2440 [pr-2445]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2445 [pr-2449]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2449 [pr-2450]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2450 [pr-2451]: https://redirect.github.com/git-ecosystem/git-credential-manager/pull/2451 </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/tak848/dotfiles). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMzQuMSIsInVwZGF0ZWRJblZlciI6IjQ0LjEzNC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZSIsInVwZGF0ZV9tYWpvciJdfQ==--> --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: tak-automation[bot] <221638520+tak-automation[bot]@users.noreply.github.com>
Avoid duplication of entries already present in included files:
Rawvalues in all Git versions supporting--show-scopeImproves consistency regarding include behavior and
Fixes #2342
Fixes #2328
Fixes #1696
Fixes #1337