Skip to content

feat: selective build cache sharing between worktrees #207

@erishforG

Description

@erishforG

Problem

parsec start로 새 워크트리 생성 시 target/, node_modules/ 등 빌드 산출물이 없어 cold build 필요.
Rust 프로젝트의 경우 수 분 소요되어 DX 저하.

Solution

사용자가 공유할 디렉토리를 명시적으로 지정하는 방식:

# ~/.config/parsec/config.toml
[worktree]
shared_cache = ["target", ".venv"]    # 공유할 디렉토리 목록
cache_strategy = "symlink"             # symlink | copy

동작

  • parsec start 시 지정된 디렉토리만 기존 워크트리에서 symlink/copy
  • 미지정 디렉토리는 공유하지 않음 (빌드 꼬임 방지)
  • node_modules처럼 경로 의존적인 것은 copy, target처럼 공유 가능한 것은 symlink

주의사항

  • 무조건 전체 공유하면 빌드가 서로 꼬일 수 있음
  • 사용자가 프로젝트 특성에 맞게 선별 지정해야 함
  • 기본값은 빈 목록 (기존 동작 유지)

References

  • Worktrunk의 build cache sharing 기능 참고

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions