Try free
6 min read Guide 539 of 877

Managing Parallel Development Streams

Parallel development streams for features, releases, and hotfixes create coordination challenges and merge conflicts. GitScrum's branch-aware tracking, release management, and multi-stream visibility help teams coordinate parallel work streams while maintaining code quality and avoiding costly conflicts.

Development Stream Types

StreamPurposePriorityMerge Target
MainNext release featuresNormalrelease branch
MaintenanceCurrent release fixesHighcurrent + main
HotfixProduction emergenciesCriticalproduction + all
ExperimentalR&D, spikesLowmain when ready

Parallel Stream Management

BRANCHING STRATEGY

GIT FLOW FOR PARALLEL STREAMS:
┌─────────────────────────────────────────────────┐
│                                                 │
│  production ──●──●──●────────●─────●─────────── │
│               │     ↑         ↑     ↑            │
│               │     │         │     │            │
│  hotfix-1 ────┴─────┘         │     │            │
│                               │     │            │
│  release/2.0 ──●──●──●──●─────┘     │            │
│               ↑↑↑↑                  │            │
│               ││││                  │            │
│  main ──●──●──●──●──●──●──●──●──●───┼──●──●──── │
│          ↑  ↑        ↑   ↑          │            │
│          │  │        │   │          │            │
│  feat-A ─┴──┘        │   │          │            │
│                      │   │          │            │
│  feat-B ─────────────┴───┘          │            │
│                                     │            │
│  release/2.1 ───────────────────────┴─────────── │
│                                                 │
└─────────────────────────────────────────────────┘

STREAM DEFINITIONS:
┌─────────────────────────────────────────────────┐
│  production: Current production code            │
│  └── Only hotfixes merge here directly          │
│                                                 │
│  release/X.X: Release stabilization             │
│  └── Bug fixes and polish only                  │
│                                                 │
│  main: Integration branch                       │
│  └── All features merge here                    │
│                                                 │
│  feature/*: Feature development                 │
│  └── Regular merges from main                   │
│                                                 │
│  hotfix/*: Emergency production fixes           │
│  └── Merge to production, then back to main    │
└─────────────────────────────────────────────────┘

Board Organization

PARALLEL STREAM BOARD VIEWS

VIEW 1: BY RELEASE STREAM
┌─────────────────────────────────────────────────┐
│  v2.0 Release (Current)                         │
│  ┌─────────┬──────────┬──────────┬────────┐     │
│  │ To Do   │ In Prog  │ Review   │ Done   │     │
│  ├─────────┼──────────┼──────────┼────────┤     │
│  │ [BUG]   │ [BUG]    │ [FEAT]   │ [BUG]  │     │
│  │         │ [DOC]    │          │ [FEAT] │     │
│  └─────────┴──────────┴──────────┴────────┘     │
│                                                 │
│  v2.1 Release (Next)                            │
│  ┌─────────┬──────────┬──────────┬────────┐     │
│  │ To Do   │ In Prog  │ Review   │ Done   │     │
│  ├─────────┼──────────┼──────────┼────────┤     │
│  │ [FEAT]  │ [FEAT]   │ [FEAT]   │        │     │
│  │ [FEAT]  │ [FEAT]   │          │        │     │
│  │ [TECH]  │          │          │        │     │
│  └─────────┴──────────┴──────────┴────────┘     │
│                                                 │
│  Hotfix (Emergency)                             │
│  ┌─────────┬──────────┬──────────┬────────┐     │
│  │ To Do   │ In Prog  │ Review   │ Done   │     │
│  ├─────────┼──────────┼──────────┼────────┤     │
│  │         │ [HOT]    │          │ [HOT]  │     │
│  └─────────┴──────────┴──────────┴────────┘     │
└─────────────────────────────────────────────────┘

LABELS FOR STREAM TRACKING:
┌─────────────────────────────────────────────────┐
│  [stream:v2.0] - Current release work           │
│  [stream:v2.1] - Next release work              │
│  [stream:hotfix] - Production emergency         │
│  [stream:experimental] - R&D work               │
└─────────────────────────────────────────────────┘

Capacity Allocation

TEAM CAPACITY BY STREAM

SPRINT CAPACITY SPLIT:
┌─────────────────────────────────────────────────┐
│  Team: 6 developers                             │
│  Sprint capacity: 60 points                     │
│                                                 │
│  Allocation:                                    │
│  ├── v2.1 Features: 40 pts (67%)                │
│  │   Developers: @alex, @jordan, @sam, @taylor  │
│  │                                              │
│  ├── v2.0 Maintenance: 15 pts (25%)             │
│  │   Developers: @casey, @riley                 │
│  │                                              │
│  └── Hotfix Buffer: 5 pts (8%)                  │
│      Developers: Rotating                       │
└─────────────────────────────────────────────────┘

STREAM PRIORITY RULES:
┌─────────────────────────────────────────────────┐
│  1. Hotfix: Drop current work                   │
│  2. v2.0 Critical: May pull from v2.1 capacity  │
│  3. v2.1 Features: Normal priority              │
│  4. Experimental: Only if capacity available    │
└─────────────────────────────────────────────────┘

Merge Coordination

MERGE TIMING COORDINATION

MERGE SCHEDULE:
┌─────────────────────────────────────────────────┐
│  Daily:                                         │
│  ├── Feature branches sync FROM main            │
│  └── Hotfixes merge to production immediately   │
│                                                 │
│  Sprint End:                                    │
│  ├── Features merge TO main                     │
│  ├── Release branch syncs from main             │
│  └── Cherry-picks to release if needed          │
│                                                 │
│  Release:                                       │
│  ├── Release branch merges to production        │
│  └── Production merges back to main             │
└─────────────────────────────────────────────────┘

CONFLICT PREVENTION:
┌─────────────────────────────────────────────────┐
│  Practices:                                     │
│  ├── Sync from main daily                       │
│  ├── Small, focused PRs                         │
│  ├── Communicate on shared file changes         │
│  ├── Feature flags for incomplete work          │
│  └── Resolve conflicts promptly                 │
│                                                 │
│  When changing shared code:                     │
│  1. Announce in #dev channel                    │
│  2. Coordinate timing with affected streams     │
│  3. Merge to main first                         │
│  4. Other streams sync                          │
└─────────────────────────────────────────────────┘

Task Workflow

TASK LIFECYCLE IN PARALLEL STREAMS

FEATURE FOR NEXT RELEASE:
┌─────────────────────────────────────────────────┐
│  1. Task created with [stream:v2.1] label       │
│  2. Developer creates feature/TASK-123 branch   │
│  3. Regular merges from main during development │
│  4. PR to main when complete                    │
│  5. Task closed, ready for v2.1 release         │
└─────────────────────────────────────────────────┘

BUG FIX FOR CURRENT RELEASE:
┌─────────────────────────────────────────────────┐
│  1. Task created with [stream:v2.0] label       │
│  2. Developer creates fix/TASK-456 branch       │
│  3. Branch from release/2.0                     │
│  4. PR to release/2.0                           │
│  5. Cherry-pick to main if applicable           │
│  6. Task closed                                 │
└─────────────────────────────────────────────────┘

HOTFIX FOR PRODUCTION:
┌─────────────────────────────────────────────────┐
│  1. Task created with [stream:hotfix] label     │
│  2. [URGENT] Drop current work                  │
│  3. Branch from production                      │
│  4. PR to production (expedited review)         │
│  5. Deploy immediately                          │
│  6. Merge back to main and release branches     │
│  7. Task closed                                 │
└─────────────────────────────────────────────────┘

Best Practices

  1. Clear stream definitions with documented rules
  2. Label tasks by stream for visibility
  3. Regular syncs from main to prevent drift
  4. Dedicated capacity per stream
  5. Communicate shared changes proactively
  6. Small PRs merge more easily
  7. Feature flags for work-in-progress
  8. Automate merges where possible

Anti-Patterns

✗ Long-lived branches without syncing
✗ Large PRs with many conflicts
✗ No stream labels on tasks
✗ Unclear which stream gets priority
✗ Everyone working on all streams
✗ Hotfixes not back-merged