2009-10-12 22 views
17

Tôi đã luôn luôn dạy bản thân mình và những người khác nghĩ về thư mục bin là tạm thời.Bạn có nên coi thư mục bin là tạm thời không?

Đó là bạn sẽ có thể xóa nó và lần sau bạn xây dựng lại nó được tái tạo và bất kỳ tài liệu tham khảo được sao chép vào nó mà không có bất kỳ rắc rối Và không để trứng của bạn tất cả trong một giỏ. Hoặc trong trường hợp này không đặt tất cả các dll yêu cầu của bạn trực tiếp vào thư mục bin. Có chúng ở nơi khác và chỉ cần tham khảo chúng.

Tôi đã thấy mọi người rơi xuống khi họ đặt các dll trực tiếp vào thư mục bin và tham chiếu chúng ở đó. Vì vậy, tôi cố gắng để tránh điều này và đặt tất cả các dlls yêu cầu của tôi trong một thư mục gọi là Refs và thêm tài liệu tham khảo cho các dlls trong đó. Tại thời gian biên dịch, chúng sẽ được sao chép vào thư mục bin.

Tôi có điên không? Đây có phải là quá cẩn thận? thông thường?

Thực tiễn tốt nhất trong trường hợp này là gì?

Chúc mừng,

- Lee

UPDATE: Hóa ra tôi không điên

Chúc mừng chàng trai mà bạn đã chọn trên một số điểm tôi quên đề cập đến.

Chủ yếu là:

  • Không kiểm tra thư mục bin vào kiểm soát nguồn
+0

Tôi cảm thấy như vậy và luôn đặt các tệp DLL trực tiếp vào thư mục dự án. Visual Studio sử dụng gốc của dự án làm đường dẫn làm mới, vì vậy nếu tôi cập nhật các tệp DLL của mình, các tham chiếu sẽ không bị hỏng. –

Trả lời

19

Đúng vậy, bạn không muốn đặt các tệp tham chiếu trong thư mục bin.Nếu bạn đang sử dụng kiểm soát phiên bản, các thư mục bin và obj phải luôn bị loại trừ hoàn toàn.

Tất cả các tệp tham chiếu phải được bao gồm trong điều khiển phiên bản, tốt nhất là trong thư mục con riêng trong dự án của bạn trunk, để mọi người có tất cả các nguồn và tham chiếu cần thiết cho mỗi lần xây dựng lại. bin thư mục phải dễ dàng được tái tạo từ đầu.

Đó là điều mà tôi tin rằng hầu hết mọi người sẽ mong đợi khi kiểm tra nguồn của bạn.

Chúng tôi cũng bao gồm một tập tin _READ_ME.txt trong thư mục gốc của dự án, trong đó nêu thông tin bổ sung vào các công cụ và các công cụ cần thiết để batch-xây dựng dự án (nant, perl, vv), do đó có thể có một số khác biệt cụ thể theo thời thời gian, nhưng không bao giờ ngạc nhiên về loại này.

+0

+1 cho 'thư mục bin và obj phải luôn bị loại trừ hoàn toàn'. –

16

Không này có ý nghĩa đầy đủ và là một thực tế bản thân tôi thực hiện các dự án cá nhân. Bất cứ điều gì dưới thư mục bin nên được coi là tài sản của môi trường msbuild/Visual Studio.

Mặc dù cả hai đều rất cẩn thận khi chỉ xóa kết quả đầu ra mà họ biết, người dùng có thể không hiểu đầy đủ đầu ra của bản dựng là gì và sao chép trên đầu ra xây dựng. hoạt động. Nó cũng có thể cho các công cụ khác để tích cực hơn ở đây trong việc làm sạch DLL. Bản thân tôi có xu hướng nuke thư mục bin theo thời gian nếu tôi nghĩ rằng quá trình xây dựng đang xem dữ liệu cũ.

Ngoài ra có vị trí của ref cung cấp cho bạn một nơi duy nhất để cập nhật tham chiếu cho tập hợp các dự án trong một giải pháp. Đối với tôi đó là một cấu trúc rất tự nhiên.

4

Tôi không biết liệu bạn có điên khùng hay không, nhưng chúng tôi đã làm theo những thực hành tương tự ở nơi cuối cùng tôi làm việc và tôi đã mang chúng đến công việc của riêng tôi. Thư mục/bin và/obj nằm ngoài kiểm soát phiên bản và thứ mà tôi chưa bao giờ chạm vào. Về cơ bản họ không tồn tại xa như tôi quan tâm trong quá trình phát triển. Tất cả các DLL được bao gồm trong một thư mục khác và được tham chiếu.

5

Tôi nghĩ thư mục bin là tạm thời, đây là nơi dành cho ứng dụng được biên soạn đầy đủ.

Chúng tôi đặt bất kỳ Hội đồng bên ngoài nào vào một thư mục có tên là Hội đồng. Nhiều người khác sử dụng một thư mục có tên là lib. Điều này tách ý tưởng về một cái gì đó là cần thiết để biên dịch ứng dụng từ chính ứng dụng đã biên dịch.

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