Một thời gian trước tôi đã phát triển một chính sách đăng ký TFS tùy chỉnh là làm việc tốt với Visual Studio 2015. Bây giờ tôi đã cài đặt Visual Studio 2017 và muốn đăng ký assembly chính sách check-in giống như cách tôi đã làm với VS2015 trước đây. Dường như không hiệu quả. Làm cách nào để đăng ký hội đồng chính sách đăng ký tùy chỉnh với VS2017?Chính sách đăng ký TFS tùy chỉnh trong Visual Studio 2017
Đối với VS2015, tôi đã có những khóa registry:
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\\Program Files\\My\\MyCheckInPolicy.dll"
và
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\14.0_Config\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\\Program Files\\My\\MyCheckInPolicy.dll"
và phù hợp tôi đã thêm những phím cho VS2017 (15.0
):
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\15.0\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\\Program Files\\My\\MyCheckInPolicy.dll"
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\15.0_Config\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\\Program Files\\My\\MyCheckInPolicy.dll"
Nhưng tiếc điều này không hoạt động:
- Nếu tôi mở các thiết lập Nhóm dự án SourceControl, hãy vào phần "Check-in Policy" tab và cố gắng Thêm ... một chính sách,
MyCheckInPolicy
không xuất hiện - Nếu tôi mở dự án nhóm đã sử dụng chính sách đăng ký này rồi và làm như trên, tôi nhận được thông báo lỗi cho tôi biết rằng assembly (
mycheckinpolicy
) "chưa được đăng ký".
Tất nhiên tôi đã khởi động lại IDE sau khi thay đổi đăng ký, nhưng thậm chí rebooting máy của tôi không trợ giúp.
information Tôi tìm thấy cho đến nay dường như để đề xuất chính sách đăng ký hiện phải là một phần của tiện ích mở rộng (vsix) mà tôi không muốn tin.
Tôi đoán rằng sự cố xuất phát từ một số tham chiếu không thể giải quyết khi lắp ráp được tải vào IDE.
Dự án MyCheckInPolicy
tham chiếu Microsoft.TeamFoundation.VersionControl.Client.dll
v14.0 từ thư mục VS2015 C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer
.
Tôi đã cố gắng tham khảo dll tương ứng từ các thư mục VS2017, nhưng sau đó lắp ráp không hoạt động ở cả hai IDE.
Tôi cũng đã cố sử dụng gói Nuget "Microsoft.TeamFoundation.VersionControl.All" v12.0.30723.2 thay thế và triển khai tất cả các tệp từ thư mục đầu ra (có vẻ chứa tất cả các gói của gói) đến vị trí đã đề cập trong các khóa registry. Điều này có cùng một kết quả: chính sách không thể được tải trong cả VS2015 lẫn VS2017.
Chúng tôi đang sử dụng TFS 12.0.30723.0.
Vì vậy, có vẻ như VS2017 thậm chí không cố gắng để tải lắp ráp và không quan tâm đến các khóa registry?
Cảm ơn bạn rất nhiều! Tôi vẫn phải thay đổi dll tham chiếu đến phiên bản VS2017 (không biết tại sao cách gói nuget không hoạt động), nhưng lời giải thích tuyệt vời của bạn làm việc hoàn hảo! Tôi có một số vấn đề hơn với VS2017 như biên tập viên tùy chỉnh cho các định nghĩa xây dựng tfs ... nhưng đó là những câu hỏi cho một ngày ... Cảm ơn một lần nữa. –
Không sao, vui lòng giúp đỡ. Tôi chỉ phải trải qua nỗi đau khi làm việc này hôm qua vì không có gì ngoài đó cả. –
Tôi đã thử tạo chính sách kiểm tra mới theo các bước của bạn (cảm ơn điều đó!), Nhưng tôi không thể tìm thấy chính sách của mình trong Visual Studio. Những gì tôi muốn là một chính sách đơn giản để kiểm tra một từ nhất định trong tất cả các tệp thay đổi đang chờ xử lý và nếu từ đó có mặt thì việc đăng ký sẽ không thành công. Có lẽ nó đã có thể với các công cụ tiêu chuẩn? Cảm ơn trước ! – Lumo