Powershell如何改变它处理本机命令错误的方式?

时间:2019-05-21 13:12:45

标签: powershell

在Powershell 5.1,内部版本17134(Windows版本1803)和Powershell 5.1,内部版本17763(Windows版本1809)之间,Powershell处理本机命令错误的方式有所变化,我试图了解发生了什么变化。

我有一个Powershell脚本在本地Windows计算机上的Azure管道中运行。该脚本包含命令git checkout origin/master

从Windows版本1809开始,此操作开始失败。我会收到以下错误:

##[error]git : HEAD is now at b1e379d
##[error]At line:1 char:1
+ git checkout origin/master
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (HEAD is now at b1e379d) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

##[error]PowerShell exited with code '1'.code

这里发生的是消息HEAD is now at b1e379d被发送到STDERR,这引起了NativeCommandError。这很容易解决。我只需要打电话给git checkout origin/master --quiet

但是我真正想了解的是发生了什么变化。为什么以前没有失败,为什么现在却失败了?此更改还有哪些其他后果?

0 个答案:

没有答案