2008-10-01 11 views
6

Chúng tôi đang thực hiện chuyển đổi từ SourceGear Vault sang TortoiseSVN với VisualSVN để tích hợp Visual Studio - hoàn toàn thích nó. Tuy nhiên, có nhiều thư viện lớp mà chúng tôi tham chiếu trong nhiều ứng dụng khác nhau không phải là một phần của bản sao làm việc gốc trong bất kỳ ứng dụng nào. Cách tốt nhất để đối phó với điều này để chúng ta có thể tiếp tục sử dụng tích hợp Visual Studio là gì, nhưng vẫn giữ các thư viện lớp khác nhau nằm bên ngoài mỗi gốc của ứng dụng/ứng dụng? SourceGear không có vấn đề gì với điều này.VisualSVN và thư viện lớp học không có trong bản sao làm việc gốc

Có thể thêm thư viện lớp riêng biệt chỉ bằng cách sử dụng TortoiseSVN trong trình thám hiểm, nhưng không có khả năng cam kết thay đổi bất kỳ thứ gì bên ngoài bản sao làm việc từ trong Visual Studio; không có "đèn giao thông" của VisualSVN cho biết trạng thái của các thư viện lớp bản sao làm việc bên ngoài.

Nhân tiện, chúng tôi cũng sẽ sử dụng tuyến đường "một kho lưu trữ với nhiều dự án" thay vì nhiều kho lưu trữ, đặc biệt là cách chúng tôi đã làm việc trong nhiều năm đến thời điểm này.

UPDATE:

tôi lại đọc một số những điều mà tôi đã nhìn trước và phát hiện ra rằng svn: externals không chỉ đề cập đến cách sử dụng mã trong kho khác nhau, nhưng cũng có thể được sử dụng để sử dụng nhiều bản sao làm việc trong VisualSVN.

Xem http://www.visualsvn.com/support/topic/00007/http://svnbook.red-bean.com/en/1.2/svn.advanced.externals.html

Tuy nhiên, đây là cách tốt nhất để đối phó với vấn đề này? Có một số good thread có nhiều thứ nhưng không giải quyết được mọi thứ.

Vì vậy, hãy sử dụng svn: externals hay không? Sử dụng nhiều kho lưu trữ hay không? Một lần nữa, trong nhiều năm, chúng tôi đã tham chiếu mã trong các thư viện lớp chia sẻ giữa nhiều giải pháp/ứng dụng và điều này phù hợp với chúng tôi. Bây giờ làm thế nào tốt nhất để làm cho công việc này với VisualSVN?

Trả lời

4

Tìm thấy những câu trả lời tốt nhất here:

Khảo Sát Dự án

Đôi khi nó rất hữu ích để xây dựng một bản sao làm việc được thực hiện trên một số Thanh toán khác nhau. Ví dụ, bạn có thể muốn các thư mục con khác nhau đến từ các vị trí khác nhau trong một kho lưu trữ, hoặc có lẽ từ các kho lưu trữ khác nhau hoàn toàn. Nếu bạn muốn mọi người dùng có cùng một bố cục, bạn có thể xác định thuộc tính svn: externals.

here:

Bao gồm một tiểu dự án chung

Đôi khi bạn sẽ muốn bao gồm một dự án khác trong bản sao làm việc của bạn, có lẽ một số mã thư viện. Bạn không muốn tạo một bản sao của mã này trong kho lưu trữ của bạn bởi vì sau đó bạn sẽ mất kết nối với mã ban đầu (và duy trì). Hoặc có thể bạn có một số dự án chia sẻ mã lõi. Có ít nhất 3 cách để giải quyết vấn đề này.