워크스페이스 지도

Cargo 작업공간

작업공간은 여러 패키지를 한 저장소에서 함께 빌드하면서 target 디렉터리와 잠금 파일을 공유하는 구조입니다.

1

루트 기준

루트 Cargo.toml[workspace]가 멤버 크레이트를 묶습니다.

members

멤버 선언

members 목록은 함께 빌드하고 테스트할 패키지 경로를 명시합니다.

path

내부 의존성

멤버끼리는 path 의존성으로 연결해 로컬 크레이트를 직접 참조합니다.

lock

공유 잠금

하나의 Cargo.lock이 외부 의존성 버전을 맞춰 전체 빌드의 재현성을 높입니다.

명령 선택

  • cargo test는 작업공간 전체를 대상으로 실행될 수 있습니다.
  • cargo test -p adder처럼 패키지를 지정해 범위를 줄입니다.

구성 확인

  • 루트에는 패키지 소스가 없고 조정 파일 역할만 할 수 있습니다.
  • 공통 의존성 버전이 충돌하면 멤버별 선언을 먼저 비교합니다.