doudu3961 2017-02-28 13:30
浏览 63
已采纳

检查golang格式以进行持续集成

I am trying to write a makefile command that will output an error if the golang code is not correctly formatted. This is for a CI step. I am struggling with how to get it working in the make file. This solution works on the bash commandline:

! gofmt -l . 2>&1 | read

But copying this into the makefile:

ci-format:
    @echo "$(OK_COLOR)==> Checking formatting$(NO_COLOR)"
    @go fmt ./...
    @! gofmt -l . 2>&1 | read

I get the following error:

/bin/sh: 1: read: arg count
  • 写回答

1条回答 默认 最新

  • dth8312 2017-02-28 13:37
    关注

    The command I use for precisely that purpose is:

    diff -u <(echo -n) <(gofmt -d ./)
    

    See, for example, the .travis.yml files on one of my projects.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?