- Xu hướng sử dụng monorepo đang dần gia tăng, nhưng do các vấn đề liên quan đến thay đổi/cache/build lại, việc chọn công cụ nào là rất quan trọng
- Các tính năng chính cần cân nhắc: có hỗ trợ ngôn ngữ hay không, độ dốc học tập, caching, kiểm tra build, mức độ đa dụng (versatility)
- Nếu tổ chức của bạn có ngôn ngữ phát triển, quy trình làm việc và quy mô codebase tương tự Google thì Bazel
- Nếu không hài lòng với chi phí di chuyển sang Bazel, hỗ trợ Python hoặc việc viết
BUILD thì Pants
- Nếu chủ yếu dùng JavaScript / TypeScript thì NX cũng là một lựa chọn tuyệt vời
- Nếu là các microservice được container hóa, có phụ thuộc ở cấp hệ thống, hoặc có những tác vụ hơi phi chuẩn thì Earthly
2 bình luận
Mọi thứ về Monorepo
Bài này cũng do Earthly viết, nên hãy cân nhắc điều đó khi đọc nhé~