Skip to content

安装指南

Task 提供多种安装方式。请查看以下可用方法。

官方包管理器

这些安装方法由 Task 团队维护,始终保持最新状态。

dnf Fedora CentOS Fedora

[包地址]

通过运行以下命令设置仓库:

shell
curl -1sLf 'https://dl.cloudsmith.io/public/task/task/setup.rpm.sh' | sudo -E bash

然后可以通过以下命令安装 Task:

shell
dnf install task

apt Ubuntu Debian Linux Mint

[包地址]

通过运行以下命令设置仓库:

shell
curl -1sLf 'https://dl.cloudsmith.io/public/task/task/setup.deb.sh' | sudo -E bash

然后可以通过以下命令安装 Task:

shell
apt install task

Homebrew macOS Linux

Task 可通过我们的官方 Homebrew tap 获取 [源码]:

shell
brew install go-task/tap/go-task

或者可以从官方 Homebrew 仓库安装 [包地址] [源码]:

shell
brew install go-task

Snap macOS Linux

Task 可在 Snapcraft 获取 [源码], 但请注意您的 Linux 发行版应允许 Snap 使用经典隔离模式以确保 Task 正常工作:

shell
sudo snap install task --classic

npm macOS Linux Windows

Npm 可作为跨平台方式全局安装 Task 或作为项目依赖安装 [包地址] [源码]:

shell
npm install -g @go-task/cli

WinGet Windows

Task 可通过 社区仓库 获取 [源码]:

shell
winget install Task.Task

社区维护的包管理器

社区维护

这些安装方法由社区维护,可能不总是与最新版 Task 保持同步。Task 团队不直接控制这些软件包。

Mise macOS Linux Windows

Mise 是一个跨平台包管理器,可作为多种其他包管理器"后端"(如 asdfaquaubi)的"前端"。

如果使用 Mise,我们推荐使用 aquaubi 后端安装 Task,这些后端直接从我们的 GitHub 发布版安装。

shell
mise use -g aqua:go-task/task@latest
mise install
shell
mise use -g ubi:go-task/task
mise install

Macports macOS

Task 仓库由 Macports 跟踪 [包地址] [源码]:

shell
port install go-task

pip macOS Linux Windows

与 npm 类似,pip 可作为跨平台方式安装 Task [包地址] [源码]:

shell
pip install go-task-bin

Chocolatey Windows

[包地址] [源码]

shell
choco install go-task

Scoop Windows

[源码]

shell
scoop install task

Arch (pacman) Arch Linux

[包地址] [源码]

shell
pacman -S go-task

Fedora (dnf) Fedora

[包地址] [源码]

shell
dnf install go-task

FreeBSD (Ports) FreeBSD

[包地址] [源码]

shell
pkg install task

NixOS (nix) NixOS Linux

[源码]

shell
nix-env -iA nixpkgs.go-task

pacstall Debian Ubuntu

[包地址] [源码]

shell
pacstall -I go-task-deb

pkgx macOS Linux

[包地址] [源码]

shell
pkgx task

或者,如果启用了 pkgx 集成:

shell
task

获取二进制文件

二进制文件

您可以从 GitHub 发布页面 下载二进制文件并添加到 $PATH 中。

同时提供 DEB 和 RPM 包。

task_checksums.txt 文件包含每个文件的 SHA-256 校验和。

安装脚本

我们还提供了一个 安装脚本, 在 CI 等场景中非常有用。感谢 GoDownloader 使此脚本的生成变得简单。

默认情况下,它会安装到工作目录的相对路径 ./bin

shell
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d

可以使用 -b 参数覆盖安装目录。 在 Linux 上,常见选择是 ~/.local/bin~/bin 为当前用户安装,或 /usr/local/bin 为所有用户安装:

shell
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin

WARNING

在 macOS 和 Windows 上,~/.local/bin~/bin 默认不会添加到 $PATH 中。

默认情况下,它会安装最新的可用版本。您也可以指定标签 (在发布版中可用)来安装特定版本:

shell
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d v3.36.0

参数顺序敏感,要同时设置安装目录和版本:

shell
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b ~/.local/bin v3.42.1

GitHub Actions

我们有一个官方 GitHub Action 可在您的 GitHub 工作流中安装 Task。此仓库是从 Arduino 团队的优秀项目分叉而来。查看仓库获取更多示例和配置。

yaml
- name: 安装 Task
  uses: go-task/setup-task@v1

从源码构建

Go Modules

确保已正确安装和设置受支持的 Go 版本。您可以在 go.mod 文件中找到 Go 的最低要求版本。

然后可以通过运行以下命令全局安装最新发布版:

shell
go install github.com/go-task/task/v3/cmd/task@latest

或者可以安装到其他目录:

shell
env GOBIN=/bin go install github.com/go-task/task/v3/cmd/task@latest

TIP

对于 CI 环境,我们推荐使用安装脚本,因为它更快更稳定,只会下载最新的发布版二进制文件。

设置自动补全

某些安装方法会自动安装补全功能,但如果这对您不起作用或您选择的方法不包含它们,您可以运行 task --completion <shell> 为任何支持的 shell 输出补全脚本。有几种方法可以将这些补全添加到 shell 配置中:

选项 1. 在 shell 的启动配置中加载补全(推荐)

此方法在每次创建新 shell 时从当前安装的 task 版本加载补全脚本。这确保您的补全始终是最新的。

shell
# ~/.bashrc
eval "$(task --completion bash)"
shell
# ~/.zshrc
eval "$(task --completion zsh)"
shell
# ~/.config/fish/config.fish
task --completion fish | source
powershell
# $PROFILE\Microsoft.PowerShell_profile.ps1
Invoke-Expression  (&task --completion powershell | Out-String)

选项 2. 将脚本复制到 shell 的补全目录

此方法需要您在 Task 更新时手动更新补全。但是,如果您想自己修改补全,这很有用。

shell
task --completion bash > /etc/bash_completion.d/task
shell
task --completion zsh  > /usr/local/share/zsh/site-functions/_task
shell
task --completion fish > ~/.config/fish/completions/task.fish