2013-04-25 24 views
5

Gần đây, tôi muốn chấp nhận submodules từ GIT với các dự án Android của mình nhưng gặp phải một số vấn đề.Nhiều dự án Android với cùng một mô-đun GIT

chút lịch sử

Tôi có nhiều dự án nhưng nhiều người sử dụng cùng một thư viện bên ngoài (Android thư viện dự án), để làm cho GIT sạch hơn và làm cho GIT cho từng dự án có đầy đủ các tài liệu cần thiết tôi mặc dù sử dụng mô đun phụ GIT cho dự án thư viện Android. Phần này hoạt động tốt Tôi đã nhận thư viện bao gồm như là một tiểu module cho các dự án.

Issue

Nhưng Android sử dụng các thư viện dự án mà về cơ bản là một dự án thường xuyên được bổ sung vào dự án và tôi chỉ có thể thêm cùng một dự án một lần trong Eclipse. Vì vậy, nếu tôi cần phải làm việc trên nhiều dự án cùng một lúc, tôi phải sử dụng nhiều cá thể của Eclipse/không gian làm việc thay vì sử dụng Eclipse theo cách thông thường.

Có cách nào để chỉ có một ví dụ về dự án thư viện của tôi trong nhật thực và đồng thời có tất cả các dự án tham chiếu đến thư viện tương ứng của họ không? Hoặc bất kỳ đề xuất khác như thế nào tôi nên xử lý này?

Bất kỳ sự giúp đỡ là rất đánh giá cao

+0

Tôi đã tự giải quyết một vấn đề tương tự, tự hỏi làm thế nào để giải quyết vấn đề này. Bạn có tìm ra thứ gì không? –

+0

@ScottW chưa có gì ... – Warpzit

+0

[Tôi đã đăng câu hỏi này, lol] (http://stackoverflow.com/questions/16325205/how-do-i-manage-git-submodule-subprojects-in-eclipse) –

Trả lời

2

Bạn không thể có dự án thư viện như một trường hợp duy nhất trong Eclipse vì lý do sau.

  • Mỗi dự án sử dụng thư viện có thể tham chiếu một phiên bản thư viện khác. Vì môđun con của bạn là một thanh toán vật lý (thư mục hoạt động) của một phiên bản cụ thể, không có cách nào đại diện cho nhiều hơn thì một trạng thái của kho lưu trữ tại một thời điểm nhất định.

Cách giải quyết:

  1. Chuẩn bị một "máy chủ" vị trí cho các dự án thư viện. Nó là đủ tốt để tạo ra một bản sao bằng cách sử dụng git clone --bare.
  2. Sao chép dự án thư viện "máy chủ" vào không gian làm việc của bạn.
  3. Tiền tố dự án thư viện phản ánh tên của dự án chính được sử dụng.
  4. Lặp lại bước 2 và 3 cho mỗi dự án chính mà bạn cần thư viện làm việc.
  5. Mỗi khi bạn thực hiện các thay đổi trong dự án thư viện, hãy tạo chi nhánh tính năng. Trong mỗi dự án chính, hãy cân nhắc xem tính năng mới có hữu ích hay cản trở hay không. Nếu nó không phù hợp với bạn rõ ràng là cần phải viết lại các tính năng mà bạn vừa tạo ra. Khi bạn cập nhật xong phiên bản thư viện (đừng ngại sử dụng thẻ với Semantic Versioning).
+0

Điều này sẽ làm việc có, nhưng tôi sẽ không thể có mỗi dự án chứa tất cả các tài liệu cần thiết ... do đó, kinda một giải pháp tối ưu. Toàn bộ lý do cho điều này là để làm cho mỗi git chứa các dự án và tất cả các tài liệu cần thiết. – Warpzit