2014-05-01 21 views
29

Tôi đang kéo tóc ra và cố gắng lấy tfIgnore để làm việc trong Visual Studio 2013.tfIgnore không hoạt động đối với tôi trong Visual Studio 2013

Tôi làm theo các hướng dẫn tại đây: bottom of this article và loại trừ nộp gói của tôi như thế này:

\folderA\folderB\packages 

Con đường có vẻ tốt đẹp và là những gì Visual Studio tạo ra cho tôi. Tôi đã kiểm tra các tập tin vào nơi Visual Studio tạo ra nó và cố gắng xây dựng lại nhưng các gói tất cả vẫn xuất hiện trong thư mục included changes của tôi trong các thay đổi đang chờ xử lý.

Tôi đã thử tất cả các loại kết hợp khác của vị trí tệp và lệnh tệppec nhưng dường như không bao giờ có tác dụng gì cả.

Tôi có thiếu thứ gì đó hiển nhiên không?

Cảm ơn

+0

Tôi đã từ bỏ với .tfignore và các gói (Tôi nghĩ rằng một cái gì đó bị tổn thương), tôi chỉ thay vào đó, hãy che giấu thư mục, – DaveShaw

+0

Xem câu trả lời tại đây http://stackoverflow.com/questions/24143925/get-tfs-to-ignore-my-packages-folder/24211160#24211160 –

+0

Thư mục của bạn đã được lưu trữ trong Kiểm soát nguồn chưa? Nếu bạn vô tình kiểm tra trong một thư mục và sau đó tạo ra một tập tin bỏ qua, các tập tin sẽ vẫn hiển thị trong các thay đổi đang chờ xử lý cho đến khi bạn đã gỡ bỏ các tập tin từ kiểm soát nguồn. –

Trả lời

9

tôi nhận thấy rằng nếu bạn có một tập tin kiểm tra trong thư mục gói, ví dụ repositories.config sau đó mô hình .tfignore không hoạt động.

Giải pháp của tôi là để xóa các thư mục gói từ kiểm soát nguồn hoàn toàn, sau đó các gói nội dung đã bị lờ đi thành công

+7

Chính xác - tfignore chỉ giao dịch với các tệp mới được thêm (và thư mục). Nếu bạn chỉ định một thư mục để bỏ qua nhưng thư mục tồn tại, nó (và các con của nó) không bị bỏ qua. –

+12

Tôi tiếp tục xóa thư mục gói trong TFS (không gian làm việc cục bộ), cam kết xóa và tôi luôn bỏ qua '\ * \ packages', nhưng' gói \ repositories.config' chết tiệt sẽ tiếp tục được thêm trở lại TFS! Nó có một chút '+' đăng nhập vào Source Control Explorer một lần nữa ngay bây giờ. Giống như tôi đang mang thai! –

8

Trong những thay đổi chờ giải quyết, kích chuột phải vào thư mục gói gốc -> nhấn lùi lại. Bạn sẽ thấy các thay đổi của bạn chuyển sang hộp thoại "Thay đổi được phát hiện", trong các thay đổi bị loại trừ (cửa sổ nơi bạn có thể quảng bá tệp vào điều khiển nguồn).

Bây giờ, hãy mở .tfignore và chỉ cần thêm packages. Bạn sẽ thấy rằng bây giờ, khi bạn mở các thay đổi được phát hiện, các gói của bạn sẽ không được hiển thị.

+5

Điều này có vẻ như là công việc, nhưng khi tôi nhận được các tệp gói của tôi được khôi phục qua NuGet Package Restore (được kích hoạt khi xây dựng giải pháp), các tệp trong 'gói' được thêm ngay vào" các thay đổi được bao gồm ". – Scott

+1

Cảm ơn, cần hoàn tác trên thư mục gói –

16

Lỗi trong NuGet có thể gây ra sự cố. Đây là workaround:

  1. Tạo một thư mục trong thư mục .nuget giải pháp của bạn, nếu nó không tồn tại.

  2. Trong thư mục .nuget, tạo một tệp nuget.config với nội dung này:

<configuration> 
    <solution> 
     <add key="disableSourceControlIntegration" value="true" /> 
    </solution> 
</configuration> 
4

tôi đã cùng một vấn đề. Tôi đã đi và thấy rằng có một lỗi trong các khách hàng NuGet:

Bỏ qua tập tin

Lưu ý: Hiện nay là một lỗi được biết đến trong Client NuGet gây client vẫn thêm thư mục gói để kiểm soát phiên bản. Giải pháp thay thế là tắt tích hợp điều khiển nguồn. Để làm điều đó, bạn sẽ cần một tệp nuget.config trong thư mục .nuget song song với giải pháp của bạn. Nếu thư mục này chưa tồn tại, bạn sẽ cần phải tạo nó. Trong nuget.cấu hình, thêm các nội dung sau đây:

http://docs.nuget.org/consume/package-restore/team-build

Và tôi đã có thể để có được nó làm việc bằng cách làm theo các công trình xung quanh liên kết trong "Bỏ qua Files" ở phần trên. Dưới đây là một đoạn của công trình xung quanh dưới đây:

Tôn trọng .tfignore và các tập tin .gitignore cho TFS Integration mô tả

Khi sử dụng TFS tích hợp trong Visual Studio, NuGet sẽ pend thêm vào/gói thư mục ngay cả khi có tệp .tfignore hoặc .gitignore tại chỗ cho biết bỏ qua thư mục/packages. NuGet nên tôn trọng tệp bỏ qua thay vì yêu cầu người dùng tạo tệp NuGet.config có disableSourceControlIntegration = true.

Điều này có thể được thực hiện bằng cách gọi vào LocalItemExclusionEvaluator: http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.versioncontrol.client.localitemexclusionevaluator.aspx

Trước khi thêm các mục vào TFS, chúng ta nên kiểm tra đánh giá này. Chúng ta nên làm điều đó cho thư mục/packages nếu không có gì khác.

https://nuget.codeplex.com/workitem/4072

4

Nếu các tập tin hoặc thư mục (s) bạn muốn bỏ qua những thay đổi để được kiểm tra-in để TFS, sau đó bỏ qua chúng trong .tfignore sẽ không làm bất cứ điều gì - bạn phải loại bỏ chúng khỏi kiểm soát nguồn đầu tiên. Bằng cách đó, mọi thay đổi đối với chúng sẽ bị bỏ qua.

0

Có vẻ như ai đó được gọi là "aheidebrecht" đang cố gắng cung cấp gói NuGet để giữ các gói NuGet không kiểm tra được vào TFS. Có vẻ hơi biến thái ...

Trong gói quản lý giao diện điều khiển chạy ...

PM> Install-Package DisableSourceControlIntegration-TFS -Version 1.0.1 

https://www.nuget.org/packages/DisableSourceControlIntegration-TFS

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