Dong.Ge

左手代码 右手江湖

golang-tools

东哥's Avatar 2020-12-08

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76

WORKDIR=`pwd`

default: build

vet:
go vet ./...

tools:
go get honnef.co/go/tools/cmd/staticcheck
go get honnef.co/go/tools/cmd/gosimple
go get honnef.co/go/tools/cmd/unused
go get github.com/gordonklaus/ineffassign
go get github.com/fzipp/gocyclo
go get github.com/golang/lint/golint
go get github.com/alexkohler/prealloc
go get github.com/axw/gocov/gocov
go get -u gopkg.in/matm/v1/gocov-html

gometalinter:
gometalinter --enable-all ./...
lint:
golint ./...

staticcheck:
staticcheck -ignore "$(shell cat .checkignore)" ./...

gosimple:
gosimple -ignore "$(shell cat .gosimpleignore)" ./...

unused:
unused ./...

ineffassign:
ineffassign .

gocyclo:
gocyclo -over 20 $(shell find . -name "*.go" |egrep -v "_testutils/*|vendor/*|pb\.go|_test\.go")

prealloc:
prealloc ./...

check: staticcheck gosimple ineffassign

doc:
godoc -http=:6060

deps:
go list -f '{{ join .Deps "\n"}}' ./... |grep "/" | grep -v "github.com/smallnest/rpcx"| grep "\." | sort |uniq

fmt:
go fmt ./...

build:
go build ./...

build-all:
go build -tags "kcp quic ping utp" ./...

test:
go test -race -tags "kcp quic ping utp" ./...

cover:
gocov test ./... | gocov-html > cover.html
open cover.html

check-libs:
GIT_TERMINAL_PROMPT=1 GO111MODULE=on go list -m -u all | column -t

update-libs:
GIT_TERMINAL_PROMPT=1 GO111MODULE=on go get -u -v ./...

mod-tidy:
GIT_TERMINAL_PROMPT=1 GO111MODULE=on go mod tidy


本文最后更新于 天前,文中所描述的信息可能已发生改变