본문으로 바로가기

Mono Repo vs Multi Repo

category software engineering/pm 2022. 8. 29. 17:52
728x90

 

 
 

Cons and Pros

  • Mono-repo makes it easier for engineers to understand the big picture of their project.
  • Mono-repo fosters collaboration among engineers.
  • Mono-repo simplifies dependency management.
  • In a large codebase, performance problems creep in mono-repo.
  • Multi-repo allows you to separate teams’ areas of responsibility.
  • Since each service resides in its repository, multi-repo often helps you avoid the performance problems you may experience in mono-repo.
  • Managing dependencies in multi-repo is complex.
  • It's more difficult to enforce common best practices and patterns in multi-repo.
  • Frontend and backend code can be reviewed within context of each other
  • No need to maintain multiple branches across multiple repos for one story
  • Greater visibility of the codebase as a whole
  • Easier to setup e2e tests for each PR

 

References

 

처음 mono repo를 경험 했을 당시에는 굉장히 번거롭다고만 생각했다. Amplify Workflow, Github Actions Workflow, vscode settings 그리고 뭔가 깔끔하게 분리된 느낌이 들지 않았다.

 

시간이 지나며 PR에서 server와 client 코드를 한 번에 요청할 수 있고, 관련 리소스가 모여 있으니 git clone, pull, push에 훨씬 편하게 느껴졌다. 다른 도메인이나 독립적인 서비스는 빼고 같은 도메인의 소스는 같이 형상관리 하는게 현재로선 최선이라고 생각된다.

'software engineering > pm' 카테고리의 다른 글

Daily Scrum  (0) 2022.09.01
회고 (Retrospective)  (0) 2022.09.01
Environment Variable Management  (0) 2022.08.29
IDL  (0) 2022.08.26
Miro  (0) 2022.08.25