I'm writing a powershell script that needs to push code to several git repositories simultaneously?
Here's the script I have thus far:
param(
[parameter(Mandatory=$true)]
[string]$repoPath,
[parameter(Mandatory=$true)]
[array]$remoteRepos
)
pushd $repoPath
$remoteRepos | % {
#Want to exexcute this without blocking
& git push $_ master --fore -v
}
popd
Here's how I execute the script:
gitdeploy.ps1 -repoPath c:\code\myrepo -remoteRepos repo1,repo2
How to I execute the & git push $_ master --fore -v
in a way that is non-blocking?
SOLUTION
Thanks to @Jamey for the solution. I wound executing this command:
Start-Process "cmd.exe" "/c git push $_ master --force -v"
You can also use start-process to run each push in an additional command window.
start-process -FilePath "git" -ArgumentList ("push", $_, "master", "--fore", "-v")
Micah, you can use start-job to run it in background - http://technet.microsoft.com/en-us/library/dd347692.aspx
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With