Private/Git/Invoke-CgrGitCommand.ps1
|
function Invoke-CgrGitCommand { [CmdletBinding()] param( [Parameter(Mandatory)] [ValidateNotNullOrEmpty()] [string] $HostName, [string[]] $ArgumentList = @(), [hashtable] $Environment = @{} ) $credentialHelperKey = "credential.https://$HostName.helper" $prefixArgumentList = @( '-c' "$credentialHelperKey=" '-c' "$credentialHelperKey=!gh auth git-credential" ) $effectiveEnvironment = @{ GIT_TERMINAL_PROMPT = '0' } foreach ($name in $Environment.Keys) { $effectiveEnvironment[$name] = $Environment[$name] } Invoke-CgrNativeCommand ` -FilePath 'git' ` -PrefixArgumentList $prefixArgumentList ` -ArgumentList $ArgumentList ` -Environment $effectiveEnvironment } |