2011-09-02 22 views
68

NuGet newbie question-
Tôi thấy repositories.config được thêm vào thư mục gói NuGet.
Có ai vui lòng hướng dẫn tôi mục đích của tệp này là gì không?NuGet - repositories.config

Cảm ơn bạn!

+0

[liên quan] (http: //stackoverflow.com/questions/11207635/what-is-the-nuget-repositories-config-file-for) –

Trả lời

59

Đó là một tệp hầu hết là chi tiết triển khai NuGet và không được xử lý trực tiếp (nó có thể biến mất hoặc thay đổi trong tương lai).

Nhưng để tham chiếu, nó chứa danh sách các đường dẫn trỏ đến tất cả các packages.config trong giải pháp. Thông thường có một cho mỗi dự án sử dụng NuGet.

+41

Tôi có nên t được bao gồm trong kiểm soát nguồn? –

+42

@MattHickford Nếu bạn sử dụng tiến trình Khôi phục Gói, bạn hoàn toàn có thể bỏ qua thư mục Gói từ kiểm soát nguồn (bao gồm tệp này). –

+0

Tuyệt vời! Cảm ơn bạn đã làm rõ. –

8

Bạn cần bao gồm tệp repositories.config trong kho lưu trữ nguồn nếu bạn đang theo dõi luồng công việc Khôi phục gói tự động.

Có giao diện trên http://docs.nuget.org/docs/workflows/using-nuget-without-committing-packages nơi nó đề cập cụ thể đến điểm này.

+3

Chỉ cần một chút bối rối vì có vẻ như NuGet đã phát triển phần nào kể từ khi câu trả lời được chấp nhận. @David Ebbo syays bạn hoàn toàn có thể bỏ qua các gói thư mục (bao gồm cả các tập tin repositories.config) nhưng liên kết của bạn đặc biệt tiểu bang: Hãy chắc chắn để kiểm tra trong tập tin _repositories.config_ của bạn trong một hộp màu vàng tươi sáng. Sau đó, nó đề cập đến các hệ thống VCS khác. Vì vậy, tôi tự hỏi nếu câu trả lời được chấp nhận là đề cập đến một "Gói khôi phục công việc" thuần túy trong TFS hoặc bây giờ chỉ là một phản ứng lỗi thời. – rism

+11

Liên kết ở trên là về khôi phục gói dựa trên MSBuild, không phải là [Khôi phục gói tự động] (http://docs.nuget.org/docs/reference/package-restore) mà không đề cập đến repositories.config –

+0

Than ôi, trang bạn đã liên kết giờ đây chuyển hướng 301 sang/tiêu thụ/gói-khôi phục/msbuild-tích hợp –

24

Câu trả lời của David Ebbo là từ năm 2011 và lời khuyên chính thức liên tục thay đổi giữa các phiên bản.

Đây là nơi chúng ta đứng vào năm 2015, cho NuGet 2.7+ với 'Automatic Package Restore' (recommended) workflow

Tôi diễn giải, nhưng về cơ bản những lời khuyên là:

Di packages/repositories.config từ kiểm soát nguồn. Chúng tôi sẽ tạo lại nó.

... trừ khi nó bằng cách nào đó vi phạm trên máy của bạn. Sau đó, làm thêm nó vào kiểm soát nguồn.

gợi ý này xuất phát từ phần trên ignoring files in git:

# Ignore NuGet Packages 
*.nupkg 
# Ignore the packages folder 
**/packages/* 

Và phần quan trọng:

[...]

# Uncomment if necessary however generally it will be regenerated when needed 
#!**/packages/repositories.config 
+2

Mỗi khi tôi thực hiện xây dựng trong VS, repositories.config được tự động thêm vào điều khiển nguồn. Làm thế nào tôi có thể ngăn chặn điều này? Các tập tin .tfignore dường như không có bất kỳ tác dụng về điều này cũng không thiết lập disableSourceControlIntegration thành true. –

+0

@ odysseus.section9 Xem http://stackoverflow.com/questions/24143925/get-tfs-to-ignore-my-packages-folder – NathanAldenSr