PROJECT_NAME := "test-go"
PKG := "github.com/test-go"
PKG_LIST := $(shell go list ${PKG}/... | grep -v /vendor/)
GO_FILES := $(shell find . -name '*.go' | grep -v /vendor/ | grep -v _test.go)
.DEFAULT_GOAL := default
.PHONY: all dep build clean test lint fmt
all: build
fmt: ## Format the files
@gofmt -l -w $(GO_FILES)
fmtcheck: ## Check and format the files
@gofmt -l -s $(GO_FILES) | read; if [ $$? == 0 ]; then echo "gofmt check failed for:"; gofmt -l -s $(GO_FILES); fi
lint: ## Lint the files
@golint -set_exit_status ${PKG_LIST}
test: ## Run unittests
@go test -short ${PKG_LIST}
race: dep ## Run data race detector
@go test -race -short ${PKG_LIST}
msan: dep ## Run memory sanitizer
@go test -msan -short ${PKG_LIST}
dep: ## Get the dependencies
@go get -v -d ./...
build: dep ## Build the binary file
@go build -i -v $(PKG)
clean: ## Remove previous build
@go mod tidy
@rm -f $(PROJECT_NAME)
version: ## Print git revision info
@echo $(expr substr $(git -rev-parse HEAD) 1 8)
run: ## Build and run the application, eg: make run local => go run main.go --config=config/config-local.toml
@MODE=customer
@ARGs=$(filter-out $@,$(MAKECMDGOALS))
@echo use config/config-"$$MODE".toml
@if [ "$(ARGs)" != "" ]; then \
go run main.go --config=config/config-"$$ARGs".local.toml; \
fi
help: ## Display this help screen
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
default:
@echo default target
相关推荐
Go常用命令.md
下面是Linux终端常用命令的详细知识点: 1. 关机和重启命令: - shutdown -h now:立即关闭系统。 - init 0 或 telinit 0:通过init系统管理进程关闭系统。 - shutdown -h +10:在10分钟后关闭系统。 - ...
VFP 常用命令、函数、属性、事件和方法 Visual FoxPro(VFP)是一种强大的数据库管理系统,提供了多种命令、函数、属性、事件和方法来帮助开发者快速构建数据库应用程序。在本节中,我们将对 VFP 的常用命令、函数...
基于Go语言开发的常用命令工具包项目资源
### Linux常用命令及Shell介绍 #### 一、ls 命令详解 - **命令功能**:`ls` 是一个非常基础且强大的命令,用于显示指定目录中的文件和子目录列表,如果没有给出任何目录,则会列出当前工作目录的内容。 - **基本...
ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup ...
在本文中,我们将深入探讨TRACE32的一些常用命令,这些命令涵盖了程序的下载和调试过程,帮助开发者更有效地进行软件开发和问题排查。 1. **连接与断开设备** - `Connect` 命令用于连接目标设备,如微控制器,通过...
"Go语言学习 - 封装Redis常用基本命令.zip"这个压缩包文件显然是为了教授如何使用Go语言来操作Redis。首先,我们需要理解Go语言中的网络编程和数据库连接概念。Go语言的net包提供了创建TCP、UDP等网络连接的能力,这...
Sybase数据库的安装可以通过命令行来完成,具体命令如下: ```bash ./opt/sybase/setup–console ``` 在安装完成后,为了保持系统的稳定性和安全性,通常还需要安装补丁。补丁的安装也需要通过命令行完成: ```...
HDFS_HBaseShell的常用命令 HDFS(Hadoop Distributed File System)是一种分布式文件系统,主要用于存储和管理大规模数据。HBase 是一个基于HDFS的NoSQL数据库,用于存储和管理大规模结构化和半结构化数据。HBase ...
Uboot 命令详解 Uboot 是一个开源的 Bootloader,广泛应用于嵌入式系统中。下面是 Uboot 中常用的...这些命令都是 Uboot 中常用的命令,了解这些命令可以帮助开发者更好地使用 Uboot,实现嵌入式系统的开发和调试。
### TRACE32的一些常用命令 #### 一、概述 TRACE32是一款强大的嵌入式系统开发工具,主要用于ARM和其他架构的微处理器的程序下载与调试。本文将详细介绍TRACE32在程序调试过程中常用的一些命令。 #### 二、常用...
本文将深入探讨GCC/G++的常用命令及其应用。 1. **编译基本命令:**`gcc [选项] [源文件] -o [目标文件]` - `gcc`或`g++`是启动编译器的命令。 - `-o`参数指定输出的可执行文件名。 - 源文件是包含C或C++代码的`...
以下是AS脚本中一些常用命令的详细解释: 1. **Go to**: `goto`命令用于跳转到指定的帧,例如`gotoAndPlay(10)`会跳转到第10帧并开始播放。 2. **Play**: `play()`命令用于启动或继续当前电影片段的播放。 3. **...
本文将详细介绍一些在U-Boot中常用的命令,特别是与烧录和引导相关的命令。 1. **help 或 ?** 这是U-Boot中最基础的命令,用于查看所有可用的命令列表。通过执行`help`或`?`,你可以了解U-Boot支持的各种功能。 ...
### Linux入门常用命令详解 #### 一、Linux进入与退出系统 在Linux系统中,用户通过登录账号来进行系统操作。Linux支持多种类型的用户账号,主要包括: - **超级用户(root)**:具有最高权限,能够执行系统级操作。 ...
在使用Sybase时,掌握一些常用的命令是非常必要的。以下是一些关键知识点的详细解释: 一、查看用户及权限 通过`select * from syslogins`可以查看所有的系统登录账户及其权限。使用`use your_db; go; sp_helpuser`...
本篇文章将详细介绍三个常用的Linux命令:`cat`、`chgrp`和`chmod`,它们分别用于文件内容查看、文件或目录所属群组的变更以及文件权限的调整。 1. `cat`命令: `cat`命令主要用于合并和查看文件内容,同时它也支持...
在UNIX操作系统中,掌握一些常用命令对于日常的文件管理和系统操作至关重要。以下是对标题和描述中涉及的一些常用UNIX命令的详细说明: 1. **`cat`**:`cat`命令用于在标准输出上显示文件内容,或者将多个文件连接...
以下是一些 FoxPro 常用的命令和函数的详细说明: 1. CREATE 命令:用于创建新的数据库表。你可以直接指定文件名,或者使用问号(?)让系统弹出对话框让你输入表名。新建的表文件通常具有.dbf扩展名。 2. MODIFY ...