Epic Management¶
This guide covers everything you need to know about epics in Gira - from creating and organizing large initiatives to tracking progress across multiple related tickets.
Overview¶
Epics in Gira represent large initiatives or high-level goals that group multiple related tickets together. They help you organize work into meaningful collections and track progress toward major objectives. Each epic can contain multiple tickets and provides a way to see the bigger picture of your project's progress.
Understanding Epics¶
What is an Epic?¶
An epic is a container for related work that: - Groups multiple tickets under a common theme or goal - Tracks overall progress across all linked tickets - Provides high-level project organization - Helps with sprint planning and roadmap visualization
Epic Lifecycle¶
Epics typically follow this lifecycle: 1. Draft - Initial creation and planning 2. Active - Work is being done on linked tickets 3. Complete - All epic goals achieved 4. Archived - Historical record keeping
Creating Epics¶
Basic Epic Creation¶
Create a simple epic with just a title:
This creates an epic with:
- Auto-generated ID (e.g., EPIC-001
)
- Default status: draft
- Reporter: Current git user
- Creation timestamp
Detailed Epic Creation¶
Create an epic with comprehensive details:
gira epic create "Mobile App Redesign" \
--description "Complete redesign of mobile app UI/UX" \
--owner alice@example.com \
--target-date 2025-12-31
Epic Creation Options¶
-d, --description
- Detailed description of the epic's goals-o, --owner
- Epic owner email (defaults to git user email)--target-date
- Target completion date (YYYY-MM-DD)--output
- Output format: text, json--quiet
- Only output epic ID
Best Practices for Epic Creation¶
- Use Clear, Goal-Oriented Titles: "Implement OAuth Login" not "Login Work"
- Write Descriptive Descriptions: Include success criteria and scope
- Start with Draft Status: Plan before activating
- Add Relevant Labels: Use consistent labeling for filtering
Viewing and Listing Epics¶
List All Epics¶
View all epics in your project:
This shows: - Epic ID and title - Current status - Number of linked tickets - Progress percentage - Creation date
Filtered Epic Lists¶
Filter epics by status:
Filter by owner:
Search epics:
# Search by title or description
gira epic list --search "authentication"
# Search in specific fields
gira epic list --search "mobile" --search-in title
Epic List Options¶
-q, --query
- Query expression (e.g., 'status:active AND owner:me()')-s, --status
- Filter by status (draft, active, completed)-o, --owner
- Filter by owner email--search
- Search text in epic fields--format
- Output format: table, json, yaml, csv, tsv, text, ids--counts
- Show summary counts
Viewing Epic Details¶
Show Epic Information¶
View complete epic details:
This displays: - Epic metadata (title, description, status, labels) - Progress information (completion percentage) - List of linked tickets with their statuses - Creation and update timestamps
Epic Show Options¶
--format
- Output format: table, json, yaml, csv, tsv, text, ids--json
- Output as JSON (shorthand for --format json)--tickets
/--no-tickets
- Show/hide tickets belonging to this epic
Managing Epic Content¶
Linking Tickets to Epics¶
During Ticket Creation¶
Link a ticket to an epic when creating it:
After Ticket Creation¶
Link existing tickets to an epic:
Using Epic Update Command¶
Add multiple tickets to an epic:
Unlinking Tickets from Epics¶
Remove tickets from an epic:
# Unlink ticket from epic
gira ticket update PROJ-123 --epic none
# Remove ticket using epic command
gira epic update EPIC-001 --remove-ticket PROJ-123
Updating Epics¶
Update Epic Metadata¶
Change epic title:
Update description:
Change status:
Managing Epic Owner and Target Date¶
Update owner:
Set target date:
Epic Update Options¶
--title
- New epic title-d, --description
- New description-s, --status
- New status (draft, active, completed)-o, --owner
- New owner email--target-date
- New target date (YYYY-MM-DD)--add-ticket
- Add ticket to epic (multiple allowed)--remove-ticket
- Remove ticket from epic (multiple allowed)
Epic Progress Tracking¶
Understanding Progress¶
Epic progress is automatically calculated based on linked tickets: - Completion Percentage: (Done tickets / Total tickets) × 100 - Status Summary: Count of tickets in each status - Progress Indicators: Visual representation of work completed
Viewing Progress¶
Check epic progress:
View progress across all epics:
Progress Best Practices¶
- Keep Epics Focused: 5-15 tickets per epic is manageable
- Regular Updates: Review epic progress during sprint planning
- Status Alignment: Move epic to "complete" when all tickets are done
- Archive Old Epics: Keep active list focused on current work
Epic Workflows¶
Epic Planning Workflow¶
-
Create Epic: Start with draft status
-
Plan Tickets: Break down epic into specific tickets
-
Activate Epic: When planning is complete
Sprint Planning with Epics¶
# View epics for sprint planning
gira epic list --status active
# Check epic progress
gira epic show EPIC-002
# Add epic tickets to sprint
gira ticket list --epic EPIC-002 --status todo
Epic Completion Workflow¶
- Monitor Progress: Regular epic progress reviews
- Complete Epic: When all tickets are done
- Archive Epic: Use the delete command
Integration with Board and Tickets¶
Epic Filtering on Board¶
View board filtered by epic:
Epic-Based Reporting¶
List tickets by epic:
Show epic progress summary:
Best Practices¶
Epic Organization¶
- Clear Scope: Define what's included and excluded
- Time-Bounded: Most epics should complete within 1-3 sprints
- Business Value: Each epic should deliver meaningful value
- Logical Grouping: Group related functionality together
Epic Management¶
- Regular Reviews: Check epic progress weekly
- Scope Management: Avoid epic scope creep
- Status Updates: Keep epic status current
- Documentation: Use descriptions for context and goals
Team Collaboration¶
- Shared Understanding: Ensure team understands epic goals
- Progress Communication: Use epics for status updates
- Planning Alignment: Align sprints with epic goals
- Retrospectives: Review epic completion and lessons learned
Common Workflows¶
Quarterly Planning¶
# Create quarterly epic
gira epic create "Q1 2025 Customer Experience" --status draft
# Plan epic content
gira ticket create "Redesign checkout flow" --epic EPIC-003
gira ticket create "Implement live chat" --epic EPIC-003
# Activate for execution
gira epic update EPIC-003 --status active
Feature Development¶
# Track feature development
gira epic create "Multi-language Support" --status active
# Monitor progress
gira epic show EPIC-004
gira board --epic EPIC-004
Bug Fix Initiatives¶
# Create bug fix epic
gira epic create "Security Vulnerability Fixes"
gira epic update EPIC-005 --status active
# Group related bugs
gira ticket update BUG-123 --epic EPIC-005
gira ticket update BUG-124 --epic EPIC-005
Troubleshooting¶
Common Issues¶
Epic not showing progress correctly - Ensure tickets are properly linked to the epic - Check that ticket statuses are up to date
Can't add ticket to epic
- Verify epic ID exists: gira epic show EPIC-001
- Check ticket ID is valid: gira ticket show PROJ-123
Epic list is cluttered
- Archive completed epics: gira epic update EPIC-001 --status archived
- Use status filters: gira epic list --status active
Performance with Large Epics¶
For epics with many tickets (20+): - Consider breaking into smaller epics - Use labels for sub-categorization - Regular progress reviews to maintain focus
See Also¶
- Ticket Management - Creating and managing tickets
- Sprint Management - Time-boxed development cycles
- Board Management - Kanban board visualization
- CLI Reference - Complete command reference