Two products, one codebase
You build two products that share code. Acme Software Corp. makes Tempo, a planner, and Inkwell, a writing app, on the same core. The same people work on both, and a release of one often needs a change in the other. Keep them in one workspace, so a task can move between them without being copied.
Acme Software Corp.one workspace for both products
Projects say what ↓ · milestones say when →1.0.0-beta.2target Oct 171.1target Nov 28No milestoneTempoAC-0187AC-0191AC-0203AC-0210InkwellAC-0188AC-0199AC-0205—
highlighted: labelled core, touching the shared codeEach task sits in at most one project and one milestone.
#The setup
- One workspace for both. Members, statuses and labels are shared, so nothing is set up twice.
- A project per product: Tempo and Inkwell. Projects have no dates; they say what the work is. Press c p to make one.
- A milestone per release:
1.0.0-beta.2,1.1. Milestones carry the target dates, and one release can hold tasks from both projects. Press c k to make one. - A label for shared work:
coremarks a task that changes the code both products use, so either product's views can find it withlabel:core.
#Spaces or projects?
A project changes how work is grouped; a Space changes who sees it. When the same people work on both products, projects are enough.
Reach for a Space when someone should see only part of the work, such as a client reviewing one product (see A studio with clients). Keep in mind that a milestone holds tasks from one place only, so a release that spans a Space and the rest of the workspace becomes two milestones.
#Ship a release
- Open the milestone to see what's left in it, and the projects its tasks come from. It shows At risk when its target is days away with tasks still open.
- When it ships, pick Completed from its state. If tasks are still open, you can move them to the next milestone due.