fix: Makefile 使用 GOBIN 绝对路径,避免 Git hook 环境 PATH 不一致
This commit is contained in:
17
Makefile
17
Makefile
@ -1,28 +1,33 @@
|
|||||||
.PHONY: lint fmt check test
|
.PHONY: lint fmt check test
|
||||||
|
|
||||||
|
GOBIN := $(HOME)/go/bin
|
||||||
|
BIN_GOFUMPT := $(GOBIN)/gofumpt
|
||||||
|
BIN_GOIMPORTS := $(GOBIN)/goimports
|
||||||
|
BIN_LINT := $(GOBIN)/golangci-lint
|
||||||
|
|
||||||
# === 代码格式化 ===
|
# === 代码格式化 ===
|
||||||
fmt:
|
fmt:
|
||||||
@echo "==> gofumpt..."
|
@echo "==> gofumpt..."
|
||||||
@gofumpt -l -w internal/ cmd/
|
@$(BIN_GOFUMPT) -l -w internal/ cmd/
|
||||||
@echo "==> goimports..."
|
@echo "==> goimports..."
|
||||||
@goimports -w internal/ cmd/
|
@$(BIN_GOIMPORTS) -w internal/ cmd/
|
||||||
|
|
||||||
# === 格式检查(CI 用,只读不改) ===
|
# === 格式检查(CI 用,只读不改) ===
|
||||||
fmt-check:
|
fmt-check:
|
||||||
@echo "==> gofumpt check..."
|
@echo "==> gofumpt check..."
|
||||||
@test -z "$$(gofumpt -l internal/ cmd/)" || (echo "gofumpt: 以下文件格式不正确:" && gofumpt -l internal/ cmd/ && exit 1)
|
@test -z "$$($(BIN_GOFUMPT) -l internal/ cmd/)" || (echo "gofumpt: 以下文件格式不正确:" && $(BIN_GOFUMPT) -l internal/ cmd/ && exit 1)
|
||||||
@echo "==> goimports check..."
|
@echo "==> goimports check..."
|
||||||
@test -z "$$(goimports -l internal/ cmd/)" || (echo "goimports: 以下文件 import 不规范:" && goimports -l internal/ cmd/ && exit 1)
|
@test -z "$$($(BIN_GOIMPORTS) -l internal/ cmd/)" || (echo "goimports: 以下文件 import 不规范:" && $(BIN_GOIMPORTS) -l internal/ cmd/ && exit 1)
|
||||||
|
|
||||||
# === 静态分析(报告模式,不阻断) ===
|
# === 静态分析(报告模式,不阻断) ===
|
||||||
lint:
|
lint:
|
||||||
@echo "==> golangci-lint (report only)..."
|
@echo "==> golangci-lint (report only)..."
|
||||||
@golangci-lint run ./... || true
|
@$(BIN_LINT) run ./... || true
|
||||||
|
|
||||||
# === 静态分析(阻断模式,CI 用) ===
|
# === 静态分析(阻断模式,CI 用) ===
|
||||||
lint-strict:
|
lint-strict:
|
||||||
@echo "==> golangci-lint (strict)..."
|
@echo "==> golangci-lint (strict)..."
|
||||||
@golangci-lint run ./...
|
@$(BIN_LINT) run ./...
|
||||||
|
|
||||||
# === 测试 ===
|
# === 测试 ===
|
||||||
test:
|
test:
|
||||||
|
|||||||
Reference in New Issue
Block a user