解读Heroku';git推送';regluar和x27的输出;git推送';输出错误
目前,我解析来自解读Heroku';git推送';regluar和x27的输出;git推送';输出错误,git,parsing,heroku,push,stderr,Git,Parsing,Heroku,Push,Stderr,目前,我解析来自gitpush-q的STDERR输出,向用户显示任何gitpush错误。这在大多数情况下都非常有效。但是,当推送到Heroku时,它们的预接收钩子也会将服务器的状态和应用程序的状态输出到STDERR 我基本上只是在寻找一种简单的方法来区分输出是否是来自git和无关Heroku数据的错误。我已经试着检查是否存在“-->”前缀,但并非所有Heroku输出都有前缀。我还想过在STDERR字符串中检查“fatal:”和“ssh:”,但这似乎非常脆弱。我也找不到任何文档说明每个git错误都
gitpush-q
的STDERR输出,向用户显示任何gitpush
错误。这在大多数情况下都非常有效。但是,当推送到Heroku时,它们的预接收钩子也会将服务器的状态和应用程序的状态输出到STDERR
我基本上只是在寻找一种简单的方法来区分输出是否是来自git和无关Heroku数据的错误。我已经试着检查是否存在“-->
”前缀,但并非所有Heroku输出都有前缀。我还想过在STDERR字符串中检查“fatal:
”和“ssh:
”,但这似乎非常脆弱。我也找不到任何文档说明每个git错误都以***:
发送到STDERR的实际Git错误:
ssh: Could not resolve hostname heroku.com: nodename nor servname provided, or not known
fatal: The remote end hung up unexpectedly
典型的Heroku状态:
-----> Heroku receiving push
-----> Rack app detected
-----> Gemfile detected, running Bundler version 1.0.3
All dependencies are satisfied
Compiled slug size is 8.4MB
-----> Launching.... done
http://XXXXXXX.com deployed to Heroku
有人有没有更好的方法来完成只识别真正的git错误的任务?根据Heroku的说法:到目前为止,还没有可靠的方法来区分Heroku输出和git输出。但他们正在努力使输出格式标准化
因此,主要是寻找最常见的元素。我知道我可以通过查看退出状态来判断推送是否成功,但我希望显示有意义的错误消息。