在PowerShell

时间:2015-08-29 12:39:10

标签: powershell-v3.0

我刚刚开始使用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命令没有执行,脚本仍在运行。

我错过了什么?

提前致谢,祝你有个美好的一天。

1 个答案:

答案 0 :(得分:0)

你必须从git可执行文件中获取返回代码并根据需要引发异常(但为什么会这样?!)

运行git后尝试检查$LASTEXITCODE varialbe。成功应该是0,否则不应该是不同的数字。