Introducing subtasks

The original idea for Conveyor was that every project represents a Git repository, and every task in that project was a Git branch. And while this simple workflow allows you to break your work into manageable chunks and to focus on writing code, there are plenty of scenarios where you need more flexibility.

That’s why we built subtasks. They offer several benefits.

Grouping related pieces of work

In Conveyor 1.5, you can create tasks that represent a significant piece of functionality in your product/project. But that task can be broken down into smaller pieces of related work.

Subtasks allow you to break your project into more granular pieces of work

Now a task in Conveyor includes a subtasks pane where you can add another layer. And each subtask is treated much like a task: they can be checked out or finished separately. As well, you can assign a subtask to different individuals — this allows various team members to work on the same task concurrently.

When subtasks are finished, their changes are merged into the parent task’s branch, but not your master branch. That only happens when you finish the parent task.

Tracking progress

With a large number of tasks, it can be hard to tell exactly how far your project has to go. But with subtasks, you can get a better overall sense of progress as you see a count of remaining incomplete subtasks for each task.

Progress is shown by the number of completed subtasks

Better collaboration

Before Conveyor 1.5, working together was a little harder than we liked. If you worked on a task that also needed a team member to help, you’d have to mention that person in a comment. Then you would assign and re-assign the task as each side completed their related pieces of work.

Now you can assign a parent task to an individual, but other team members can be primarily responsible for subtasks within.

Another nice aspect of subtasks is that you can use them to track work that is not related to writing code. For example, you could include media/PR updates for announcing a new feature your team is building. You can finish a subtask with no commits. And since you can mention a subtask in comments, it helps keep all your communication in one place. Even with your non–dev teammates.

Easier experimentation

With subtasks, you can quickly start playing with a random idea that you’re not sure will work. If you get a few commits into the idea and decide it’s not worth more time, you simply reject the subtask.

But if it looks good, you can finish the subtask, and Conveyor merges the changes into its parent task.

And more

Along with all the benefits above, subtasks also help you maintain focus. Rather than navigating between multiple tasks that are related to one another, you can stay in one place.

Last, if you want to finish a task that has incomplete subtasks, Conveyor will help. It prompts you to decide whether to convert a subtask to be a task of its own or to reject it instead.

As well, this release includes the ability to reopen a rejected task.

These additions enable a more robust workflow for teams working together. And we hope it makes Conveyor a lot more valuable. Sign up for access to try it yourself!