@ -7121,7 +7121,9 @@ class GitAuthHelper {
// Configure a placeholder value. This approach avoids the credential being captured
// Configure a placeholder value. This approach avoids the credential being captured
// by process creation audit events, which are commonly logged. For more information,
// by process creation audit events, which are commonly logged. For more information,
// refer to https://docs.microsoft.com/en-us/windows-server/identity/ad-ds/manage/component-updates/command-line-process-auditing
// refer to https://docs.microsoft.com/en-us/windows-server/identity/ad-ds/manage/component-updates/command-line-process-auditing
const output = yield this . git . submoduleForeach ( ` git config --local ' ${ this . tokenConfigKey } ' ' ${ this . tokenPlaceholderConfigValue } ' && git config --local --show-origin --name-only --get-regexp remote.origin.url ` , this . settings . nestedSubmodules ) ;
const output = yield this . git . submoduleForeach (
// wrap the pipeline in quotes to make sure it's handled properly by submoduleForeach, rather than just the first part of the pipeline
` sh -c "git config --local ' ${ this . tokenConfigKey } ' ' ${ this . tokenPlaceholderConfigValue } ' && git config --local --show-origin --name-only --get-regexp remote.origin.url" ` , this . settings . nestedSubmodules ) ;
// Replace the placeholder
// Replace the placeholder
const configPaths = output . match ( /(?<=(^|\n)file:)[^\t]+(?=\tremote\.origin\.url)/g ) || [ ] ;
const configPaths = output . match ( /(?<=(^|\n)file:)[^\t]+(?=\tremote\.origin\.url)/g ) || [ ] ;
for ( const configPath of configPaths ) {
for ( const configPath of configPaths ) {
@ -7288,7 +7290,9 @@ class GitAuthHelper {
}
}
}
}
const pattern = regexpHelper . escape ( configKey ) ;
const pattern = regexpHelper . escape ( configKey ) ;
yield this . git . submoduleForeach ( ` git config --local --name-only --get-regexp ' ${ pattern } ' && git config --local --unset-all ' ${ configKey } ' || : ` , true ) ;
yield this . git . submoduleForeach (
// wrap the pipeline in quotes to make sure it's handled properly by submoduleForeach, rather than just the first part of the pipeline
` sh -c "git config --local --name-only --get-regexp ' ${ pattern } ' && git config --local --unset-all ' ${ configKey } ' || :" ` , true ) ;
} ) ;
} ) ;
}
}
}
}