1
0
mirror of https://github.com/go-task/task.git synced 2024-12-14 10:52:43 +02:00
task/docs/README.md

52 lines
1.8 KiB
Markdown
Raw Normal View History

2018-09-23 20:06:43 +02:00
# Task
2020-12-27 23:55:55 +02:00
<div align="center">
<img id="logo" src="/Logo.png" height="250px" width="250px" />
</div>
2018-10-07 23:34:03 +02:00
Task is a task runner / build tool that aims to be simpler and easier to use
than, for example, [GNU Make][make].
2018-09-22 23:44:24 +02:00
2018-10-07 23:34:03 +02:00
Since it's written in [Go][go], Task is just a single binary and has no other
dependencies, which means you don't need to mess with any complicated install
setups just to use a build tool.
Once [installed](installation.md), you just need to describe your build tasks
2018-10-07 23:34:03 +02:00
using a simple [YAML][yaml] schema in a file called `Taskfile.yml`:
```yaml
2020-08-17 03:01:49 +02:00
version: '3'
2018-10-07 23:34:03 +02:00
tasks:
hello:
cmds:
- echo 'Hello World from Task!'
silent: true
```
And call it by running `task hello` from you terminal.
The above example is just the start, you can take a look at the [usage](usage.md)
2018-10-07 23:34:03 +02:00
guide to check the full schema documentation and Task features.
## Features
- [Easy installation](installation.md): just download a single binary, add to
$PATH and you're done! Or you can also install using [Homebrew][homebrew],
[Snapcraft][snapcraft], or [Scoop][scoop] if you want;
- Available on CIs: by adding [this simple command](installation.md#install-script)
2018-10-07 23:34:03 +02:00
to install on your CI script and you're done to use Task as part of your CI pipeline;
- Truly cross-platform: while most build tools only work well on Linux or macOS,
Task also supports Windows thanks to [this awesome shell interpreter for Go][sh];
- Great for code generation: you can easily [prevent a task from running](usage.md#prevent-unnecessary-work)
2018-10-07 23:34:03 +02:00
if a given set of files haven't changed since last run (based either on its
timestamp or content).
2018-09-22 23:44:24 +02:00
[make]: https://www.gnu.org/software/make/
2018-10-07 23:34:03 +02:00
[go]: https://golang.org/
[yaml]: http://yaml.org/
[homebrew]: https://brew.sh/
[snapcraft]: https://snapcraft.io/
[scoop]: https://scoop.sh/
2018-10-07 23:34:03 +02:00
[sh]: https://mvdan.cc/sh