개발 공부 기록

모노레포와 러나 본문

개발/기타

모노레포와 러나

_김도연 2021. 6. 27. 20:49

모노레포(mono-repo)란?

- 모노(mono)는 단일을 의미한다. 멀티레포(multi-repo)에 반대되는 개념으로 하나의 저장소에 두 개 이상의 프로젝트를 가진 레포를 의미한다.

장점

- 여러 패키지에서 하나의 설정을 공유 가능(ESLint, Prettier 등)

- 여러 패키지의 변경사항을 하나의 commit 과 PR로 업로드 가능

- 모든 구성원이 모든 코드에 접근할 수 있기 때문에 협업이 용이하다.

단점

- Repository의 규모가 커진다. 문제 발생 시 여러 나비효과가 발생할 수도 있다.

- 패키지의 규모가 커짐에 따라 CI Bulid가 느려진다.

- 패키지간 의존성 관리가 쉽다는 장점이 있지만, 이로 인해 과도한 의존 관계가 발생할 수도 있다.

러나(lerna)란?

- 모노레포의 패키지 구성을 도와주는 라이브러리이다.

- lerna boostrap 커맨드를 통해 모든 의존성을 추가하고 상태 수정을 할 수 있다.

'개발 > 기타' 카테고리의 다른 글

[Mac] Mac 꾸미기 - Run Cat  (0) 2021.12.06
7월 읽을만한 글  (0) 2021.07.06
[기초] 브라우저 호환성과 빌드 환경(Webpack)  (0) 2020.09.21
[HTML] input 태그 속성  (0) 2020.09.13
[VSCode] Formater - Prettier  (0) 2020.09.13
Comments