GitScrum / Docs
Toutes les Bonnes Pratiques

Développement Monorepo | GitScrum

Gérez développement monorepo avec GitScrum. Coordonnez packages multiples, suivez changements inter-packages. +40% vélocité.

4 min de lecture

How to use GitScrum for monorepo development?

Manage monorepos in GitScrum with package-specific labels, track cross-package dependencies, and document shared conventions in NoteVault. Coordinate releases across packages, monitor build health. Monorepo teams with structured workflow maintain 40% faster development velocity [Source: Monorepo Research 2024].

Monorepo workflow:

  • Plan - Identify packages
  • Develop - Work in package
  • Test - Package + affected
  • Review - Cross-package review
  • Integrate - Merge to main
  • Release - Coordinated releases
  • Monitor - Build health
  • Monorepo labels

    LabelPurpose
    pkg-coreCore package
    pkg-uiUI components
    pkg-apiAPI package
    pkg-sharedShared utilities
    cross-packageMultiple packages
    breaking-changeBreaking change
    infrastructureMonorepo tooling

    Monorepo columns

    ColumnPurpose
    BacklogAll work
    DevelopmentActive work
    TestingPackage testing
    Cross-package ReviewAffected packages
    IntegrationMerge ready
    ReleasedPublished

    NoteVault monorepo docs

    DocumentContent
    Package structurePackage purposes
    Dependency graphPackage dependencies
    ConventionsShared standards
    Release processHow to release
    Build guideDevelopment setup

    Package task template

    ## Task: [description]
    
    ### Packages Affected
    - Primary: [package name]
    - Also affects: [other packages]
    
    ### Changes
    - [Change 1]
    - [Change 2]
    
    ### Breaking Changes
    [ ] No breaking changes
    [ ] Breaking change - see migration
    
    ### Testing
    - [ ] Package tests pass
    - [ ] Affected packages tested
    - [ ] Integration tests pass
    
    ### Release Notes
    [What to include in changelog]
    

    Cross-package coordination

    Change TypeCoordination
    Internal onlySingle package
    API changeAll consumers
    Shared utilAll users
    BreakingMigration plan

    Dependency management

    DependencyTracking
    InternalPackage.json
    ExternalVersion sync
    PeerCompatibility

    Release coordination

    StepAction
    Identify changesPer package
    Version bumpsSemver
    Order releasesDependencies first
    Test releasesVerify each
    PublishIn order

    Breaking change workflow

    PhaseAction
    IdentifyMark as breaking
    DocumentMigration guide
    NotifyAffected teams
    MigrateUpdate consumers
    ReleaseCoordinated release

    Build optimization

    FocusTracking
    Build timeTotal CI time
    Cache hits% cached
    Affected buildsOnly changed
    ParallelismConcurrent jobs

    Monorepo metrics

    MetricTrack
    Build timeTotal CI time
    Test timeAll packages
    Release frequencyPer package
    Cross-package changes% of changes

    Common monorepo issues

    IssueSolution
    Slow buildsAffected detection
    Version conflictsSync versions
    Large PRsSmaller changes
    Test flakinessIsolated testing

    Infrastructure tasks

    Task TypePurpose
    Build toolingImprove CI
    Cache optimizationFaster builds
    Dependency updatesKeep current
    Shared configsConsistency

    Package ownership

    PackageOwnerTeam
    core@leadPlatform
    ui@leadFrontend
    api@leadBackend

    Related articles