Skip to content

Development Workflow

This document describes the standard development workflow for the Rose project.

Workflow Overview

flowchart LR A[git-add-worktree] --> B[Develop & Commit] B --> C[Create PR] C --> D[cli-merge-branch]

Step 1: Create a Worktree

Use git-add-worktree to create an isolated workspace for your feature:

# From the main repository directory
git-add-worktree feature/my-feature

This creates a new directory at ../feature/my-feature with a fresh checkout.

Step 2: Develop

Work in the new worktree directory:

cd ../feature/my-feature

# Make changes and commit
git add .
git commit -m "feat: implement my feature"

Step 3: Create a Pull Request

Push your branch and create a PR:

git push -u origin feature/my-feature
gh pr create --base develop

Step 4: Merge with cli-merge-branch

When ready to merge, use the CLI tool:

cd backend
poetry shell
cli-merge-branch

See CLI Merge Branch for detailed options and troubleshooting.

Why This Workflow?

Step Benefit
git-add-worktree Work on multiple features simultaneously without stashing
Create PR Get code review and CI checks before merging
cli-merge-branch Ensures tests pass and follows consistent merge process