2013-06-28 25 views
6

Tôi đã tách mã mà tôi đã thực hiện cho đến thời điểm này từ một dự án maven duy nhất cho nhiều dự án maven. Các dự án mà tôi đã kết thúc với có thể được sử dụng bởi các dự án trong tương lai, chúng có khá nhiều thư viện. Tôi đã sử dụng một kho lưu trữ Git duy nhất cho đến thời điểm này vì mọi thứ đều nằm trong một dự án. Tuy nhiên sau khi modularisation tôi tự hỏi nếu tôi nên tạo một kho Git cho mỗi dự án Maven. Tôi nghĩ đó là cách chính xác để làm điều đó, nhưng tôi muốn nghe những gì người khác nghĩ về điều đó. Vì các dự án có thể hoạt động như các thành phần độc lập nên chúng cũng xứng đáng với kho lưu trữ Git của riêng chúng? Một lựa chọn khác là phát triển tất cả các dự án trong cùng một kho lưu trữ Git cho dự án mà tôi hiện đang làm việc.Dự án Maven mô-đun và nhiều kho lưu trữ Git

+0

Cách bạn dự định sử dụng nó sẽ ảnh hưởng không kém đến quyết định. Bạn có nhiều khả năng nĩa các mô-đun như độc lập? – velo

+0

Điều này thực sự đi xuống, "Làm thế nào để bạn muốn làm điều đó?". Không có câu trả lời "chính xác" cho điều này. Dù bằng cách nào là tốt. –

Trả lời

2

Vì các dự án có thể hoạt động như các thành phần độc lập nên chúng cũng xứng đáng với kho lưu trữ Git của riêng chúng?

Đây thực sự là một trong những tiêu chí chính để xác định một repo git, mà sẽ đại diện cho một nhóm chặt chẽ của tập tin với lịch sử độc lập riêng của mình (bao gồm cả bộ của chi nhánh và các thẻ)

này có thêm lợi thế là một số dự án khác tùy thuộc vào một số nhưng không phải tất cả các thành phần của bạn sẽ không phải sao chép toàn bộ git repo độc đáo (có chứa mọi thứ, bao gồm các thành phần không cần thiết).
Dự án khác có thể sao chép và hưởng lợi từ tập con chính xác của các thành phần cần thiết.

Đây được gọi là component approach, as opposed to the system approach.

+1

Có chính xác. Tôi sẽ thêm vào điều này mà bạn có thể muốn loại bỏ bất kỳ pom cha mẹ bạn có thể có là tốt. Bằng cách đó, bạn có thể thực sự phát triển cả hai mô-đun một cách độc lập. Nếu điều đó là bất tiện vì các mô-đun của bạn thực sự được kết hợp chặt chẽ, việc mô đun hóa sẽ gây ra nhiều vấn đề hơn là nó giải quyết được. Đây là một chút của một mô hình chống trong Java, nơi mọi người biến tất cả các gói thành một mô-đun và kết thúc chi tiêu cách quá nhiều thời gian làm phát hành, xây dựng, vv –

Các vấn đề liên quan