cleanUrl: /blogs/sixshop-monorepo
description: "2년여간의 통합과 확장의 과정을 소개합니다."
ogImage: "<https://nashil.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F82f738b5-a0a1-4979-bc81-2daaaacec47b%2Fbf81a943-587e-4925-bb44-c237a4f1d224%2Fnashu.png?table=block&id=2d971f08-b0d9-440a-9e4d-0cfdfb7b600e&spaceId=82f738b5-a0a1-4979-bc81-2daaaacec47b&width=1440&userId=&cache=v2>"
utterances:
repo: choinashil/utterances
이번 포스팅에서는 모노레포의 개념을 비유와 함께 간단히 소개하고, 실제 식스샵 프론트엔드 어플리케이션에 적용한 과정을 소개하고자 한다.
프로젝트 구조에 따라 레포지토리를 다양하게 구성할 수 있다. 레포지토리를 집으로, 프로젝트를 방으로 생각하면 이해하기 쉽다.
방이 나눠져있지 않은 집(원룸)을 생각해보자.
https://m.ggumim.co.kr/star/view/4081
비유 | 레포지토리 관점 |
---|---|
새로운 입주자가 등장했을 때 | 서비스나 기능이 추가될 때 |
방이 없기 때문에 | 하나의 레포지토리에 하나의 프로젝트만 존재하기 때문에 |
원하는 곳에 짐을 두면 된다. | 필요한 위치에 모듈을 자유롭게 배치할 수 있다. |
이미 집 내부에 공용 시설이 갖춰져 있어 | 공통 모듈이 존재하기 때문에 |
필요하다면 바로 가져다 쓸 수 있다. | 원하는 모듈을 참조할 수 있다. |
방이 나뉘어있지 않아 입주자의 스타일에 맞게 공간을 꾸미는 것은 한계가 있다. | 프로젝트마다 설정이나 배포 방식을 구성하는 것은 한계가 있다. |
원룸(집)이 여러 개인 상황을 생각해보자.
https://realty.chosun.com/site/data/html_dir/2018/01/12/2018011202383.html