介绍
Taskfile 是一个现代化的任务运行器和构建工具,使用 YAML 格式定义任务,是 Makefile 的替代方案。
task run vs task start 语义区别
run(运行)
- 强调"执行"程序
- 通常用于开发环境,直接运行源代码
- 示例:
go run、python script.py - 适合开发调试,不需要编译
- 用于一次性执行任务或脚本
start(启动)
- 强调"启动"服务
- 通常用于启动已编译的二进制文件或服务
- 示例:
systemctl start、service start - 暗示这是一个长期运行的服务
- 用于启动后台服务或守护进程
命名建议
在 Taskfile 中定义任务时:
- 使用
run命名:开发环境执行、脚本运行、一次性任务 - 使用
start命名:服务启动、后台进程、长期运行的应用
示例:
version: '3'
tasks:
run:
desc: 运行应用(开发模式)
cmds:
- go run main.go
start:
desc: 启动服务(生产模式)
cmds:
- ./bin/app