我刚刚开始使用Git和Powershell,试图创建一个不复杂的PS脚本来同步Git的分支。
我想捕获在PowerShell中执行git命令期间可能发生的异常。
以下是我的代码摘录,我尝试使用标准的try / catch方法:
try { git reset --hard origin/master }
catch {
LogMessage ("Failure on syncing files from the GitHub")
LogMessage $_.Exception.Message;
Return
}
LogMessage是一个在文件中输出异常的函数。我使用Posh-Git来运行脚本。
由于某些原因,这不起作用。 catch没有收集异常,return命令没有执行,脚本仍在运行。
我错过了什么?
提前致谢,祝你有个美好的一天。
答案 0 :(得分:0)
你必须从git可执行文件中获取返回代码并根据需要引发异常(但为什么会这样?!)
运行git后尝试检查$LASTEXITCODE
varialbe。成功应该是0,否则不应该是不同的数字。