2008-09-25 30 views
7

Bài đăng này tương tự như this previously asked question. Tôi thực sự muốn thiết lập kho SVN ở định dạng TTB, nhưng khi tạo dự án trong Visual Studio 2008 (ASP.NET/VB.NET) , cấu trúc được tạo ra có xu hướng không tương thích khi xem xét tệp giải pháp, tệp dự án, thư mục cho dự án, nhiều dự án trong giải pháp, v.v. Có ai có kịch bản hoặc thủ tục để thực hiện dự án ASP.NET mới được tạo và chuyển nó sang TTB hay không định dạng không đau đớn nhất có thể?Cấu trúc của các dự án trong điều khiển phiên bản - .NET cụ thể


Hãy để tôi cụ thể hơn. Giả sử tôi có một dự án mà tôi tạo ra được gọi là StackOverflowIsAwesome. Tôi có thể đặt nó vào cấu trúc thư mục cục bộ của mình (giả sử là c: \ working). Khi tôi tạo nó, VS tạo ra c: \ working \ StackOverflowIsAwesome và toàn bộ các thư mục con (bin, app_data, v.v.). Nhưng tôi muốn cấu trúc kho lưu trữ của tôi trông giống như ...

 
StackOverflowIsAwesome 
    /trunk 
     /bin 
     /app_data 
    /tags 
    /branches 

Vì vậy, có cách nào để làm điều này một cách nhất quán hoặc tôi cần phải thường xuyên di chuyển/sửa đổi tệp và thư mục để thực hiện công việc này?

Trả lời

0

Nếu TTB của bạn phổ biến hơn là cho mỗi dự án, không có vấn đề gì với nó. Hay tôi đang thiếu một cái gì đó?

1

Chúng tôi đã đi với một cách tiếp cận rất đơn giản:

Cấu trúc tập tin:

  • Giải pháp thư mục (chứa tập tin giải pháp, xây dựng kịch bản, có thể nhiều hơn?)
    • thư mục dự án
    • Thư mục dự án 2
    • Tài liệu tham khảo (chứa chia sẻ ssemblies cho giải pháp).

Sau đó, chúng tôi chỉ kiểm tra toàn bộ nội dung của thư mục giải pháp trong kho lưu trữ của chúng tôi. Chúng tôi sử dụng một kho lưu trữ cho mỗi giải pháp. Tôi không chắc đây có phải là cách tối ưu để tổ chức giải pháp, nhưng nó có hiệu quả với chúng tôi hay không.

Ngoài ra, chúng tôi chi nhánh ở cấp cao nhất, không phải cho mỗi dự án.

+0

Chúng tôi thực hiện chính xác điều tương tự với các nhóm dự án có kích thước giải pháp. Chúng tôi cũng có một số mặt hàng đơn dự án nhỏ hơn (chẳng hạn như thư viện thông thường). đó là một TTB cho mỗi dự án cho những (tập tin giải pháp có thể được bao gồm trong thư mục dự án cho người độc thân nếu muốn). – VanSkalen

0

Bạn có thể xem số điện thoại previous post hoặc project này. Dự án tạo ra một cấu trúc cây phát triển .NET (yêu cầu .NET 3.5).

0

Khi giao dịch với nhiều dự án tạo nên một giải pháp Visual Studio, thật khó để quyết định cách cấu trúc mọi thứ đúng cách.

Một khía cạnh quan trọng mà bạn sẽ cần thực hiện với cấu trúc của mình là giúp bạn dễ dàng truy xuất tất cả các tệp cho một bản phát hành cụ thể. Điều quan trọng là làm điều này dễ dàng nhất có thể. Trong subversion sao chép một thư mục gốc qua các chi nhánh thẻ là dễ dàng hơn sau đó ghi nhớ để lặp lại các hoạt động tương tự cho các dự án X.

Có thể làm việc trong thời gian dài bên ngoài thân chính cũng rất quan trọng. Bạn sẽ phải xem xét điều đó là tốt.

Bạn có thể thấy rằng phần mềm của bạn có một số thành phần tự nhiên nhóm lại với nhau.Bạn có thể làm điều gì đó như thế này

/tag 

/core_library 
    /branch 
    /main 

/business_logic 
    /branch 
    /main 

/report_library 
    /branch 
    /main 

/my_ui 
    /branch 
    /main 

Không có câu trả lời dễ dàng. Những gì bạn làm thực sự phụ thuộc vào dự án cụ thể của bạn. Nếu tất cả mọi thứ vẫn còn sắp ra một mớ hỗn độn snarled sau đó có lẽ bạn cần phải nhìn vào cách dự án của bạn được thiết kế và xem nếu có thể được thay đổi để cải thiện sự hiểu biết.

-1

tôi làm điều đó theo cách này:

  1. Tạo dự án trong VS
  2. nhập tất cả mọi thứ trong thư mục dự án để Repos/projectname/trunk
  3. Thêm Repos/ngành, các hợp đồng mua/thẻ thư mục

Đó mang lại cho tôi một cấu trúc kho như:

projectname 
    /trunk 
     /bin 
     /obj 
     /Properties 
     projectname.sln 
    /tags 
    /branches 

Và tôi chỉ có thể để tất cả các tệp ở vị trí mặc định của chúng trong hệ thống tệp.

1

Một cách khác:

StackOverflowIsAwesome 
    /trunk 
    /database 
    /datafiles 
    /documents 
    /build 
    /installer 
    /lib 
     /External_DAL (external that points to shared library) 
    /utilities 
    /vendor 
    /src 
     /StackOverFlowIsAwesome 
     /StackOverFlowIsAwesome.csprj 
     /bin 
     /... 
     /StackOverFlowIsAwesomeTests 
     /StackOverFlowIsAwesomeTests.csprj 
     /bin 
     /... 
    /branches 
    /tags 

Đây sẽ là đối với từng dự án. Vì chúng ta đang sử dụng một kịch bản xây dựng, chúng ta không cần lưu trữ tệp giải pháp của mình trong SVN.

0

Đối với dự án lớn chúng ta thường sử dụng định dạng này ở đây:

/Project 
    /trunk 
     /lib/    # Binary imports here (not in svn) 

     /src    # Solution file here 
      /Libraries  # Library assemblies here 
      /StackOverflowIsAwesome.Common 

      /Products  # Delivered products here 
      /StackOverflowIsAwesome.Site 

      /Projects  # internal assemblies here 
      /StackOverflowIsAwesome.Tests 
    /branches 
     /1.x 
    /tags 
     /StackOverflowIsAwesome-1.0 

Tùy thuộc vào dự án thực tế file không nguồn (tài liệu, vv) có một thư mục dưới gốc thân cây và các nguồn lực phát triển phụ thuộc src .

Các dự án độc lập dưới gốc/dự án của chính họ, nhưng trong cùng một kho lưu trữ.

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