2008-09-30 21 views
31

Hiện tại chúng tôi đang sử dụng cả Visual Source Safe và Team Foundation Server tại nơi làm việc (VSS cho các dự án cũ, TFS cho các dự án hiện tại hoặc mới).Tôi có thể xem lịch sử tệp TFS bằng nhãn không?

Chúng tôi đã luôn sử dụng Nhãn trong điều khiển nguồn cho từng bản dựng. Trong VSS nếu bạn chọn xem lịch sử tập tin, bạn có thể bao gồm các nhãn. Trong TFS tôi không thể tìm thấy một tùy chọn để bao gồm các lables trong cửa sổ lịch sử.

Vì một trong những câu hỏi phổ biến nhất mà tôi được hỗ trợ hoặc quản lý là 'Phiên bản nào chúng tôi đã sửa/thêm/xóa/thay đổi xxxx?', Tôi luôn dựa vào nhãn xây dựng của chúng tôi hiển thị trong lịch sử.

Tôi có thể nhận Nhãn để hiển thị trong lịch sử tệp không?

+0

Kiểm tra nhãn phụ được đề cập trong một trong các câu trả lời bên dưới. Thật tuyệt vời. –

Trả lời

21

Trong phiên bản 2008 của TFS, bạn không thấy nhãn trong lịch sử chuẩn của tệp và thư mục. Nếu bạn thực sự muốn biết tại sao - hãy xem bài đăng trên blog của Brian Harry "Why TFS Labels are not like VSS Labels".

Để tìm nhãn trong Visual Studio, hãy chuyển đến Tệp, Kiểm soát nguồn, Nhãn, Tìm nhãn ... Từ đó bạn có thể xem phiên bản tệp nào được bao gồm trong nhãn đó. Nhóm này chắc chắn đã nghe nói rằng đây không phải là lý tưởng, và phiên bản tiếp theo của TFS (Team Foundation Server 2010, có tên mã là "Rosario") sẽ bao gồm các cải tiến cho chế độ xem Lịch sử để làm cho nhãn dễ tìm hơn - xem http://go.microsoft.com/?linkid=7807943 cho thông số cải tiến cho chế độ xem Lịch sử trong TFS 2010.

BTW - Tôi thực sự đã chuyển sang đánh số xây dựng dựa trên changeset với TFS khiến việc ghi nhãn ít cần thiết hơn. Xem http://www.woodwardweb.com/vsts/changeset_based.html để biết thêm chi tiết.

Hy vọng điều đó sẽ giúp ích,

Martin.

+0

Tôi biết cách tìm nhãn trong Visual Studio nhưng Label -> ánh xạ tệp rất vô ích trong trường hợp tôi đã mô tả ở trên. –

+0

Tôi đã đọc bài đăng của Brian Harry được liên kết ở trên và tôi có thể hiểu được việc thiếu nhãn trong lịch sử thư mục nhưng đối với một tệp duy nhất nhãn phải ở trước hoặc sau phiên bản tệp. Nó sẽ có thể làm điều này. Nhưng nó không có trong đồ chơi quyền lực ... –

+0

Nếu tra cứu ở cấp độ tệp là đủ, hãy xem câu trả lời của tôi. –

5

Vấn đề này đã giết chết chúng tôi.

Giải pháp tốt nhất mà tôi đã tìm thấy là sử dụng công cụ của bên thứ ba có tên Team Foundation SideKicks có sẵn miễn phí tại đây http://www.attrice.info/cm/tfs/.

Trong "Lịch sử Sidekick" có tab nhãn. Bạn có thể đánh dấu bất kỳ thư mục hoặc tập tin và nó sẽ cho bạn thấy tất cả các nhãn đã được thả vào thư mục hoặc tập tin và những gì changeset. Thật không may là bạn không thể nhìn thấy toàn bộ lịch sử của thư mục hoặc tập tin có nhãn bao gồm.

Trong "Nhãn Sidekick", bạn có thể đánh dấu bất kỳ nhãn cụ thể nào tại đó có thể cho bạn biết thư mục/tệp và các thay đổi nằm trong nhãn. Chức năng này khá giống với chức năng có sẵn trong Visual Studio và không hữu ích.

Một lưu ý là cần thiết cho máy chủ TFS 2008 trở lên. Sử dụng công cụ với máy chủ TFS 2005 là chậm chạp và cơ bản không sử dụng được.

-ephi

+0

Vâng tôi sử dụng nó cho các tìm kiếm nhãn mọi lúc tuyệt vời của nó. –

4

[do sự phức tạp của nhãn TFS-phong cách này là một vấn đề khá khó khăn khi áp dụng cho thư mục; dựa trên một bình luận ở trên tôi sẽ giả sử tìm kiếm các nhãn trên một tệp là đủ]

Thật không may đây là một trong số ít trường hợp cạnh của API khách hàng TFS không được hiển thị ở bất kỳ đâu trong tf.exe hoặc VS2008 . Bạn sẽ phải gọi trực tiếp cho API. Vui lòng xem http://msdn.microsoft.com/en-us/library/bb138967.aspx - thông số "versionFilterItem" thực hiện những gì bạn đang tìm kiếm.

0

Tôi đã sử dụng TFS branch history cho điều này trước đây. Nó không phải là giao diện người dùng lớn nhất trên thế giới và chỉ cho phép bạn hiển thị lịch sử cho mỗi tệp nhưng nó hoàn thành công việc.

2

TFS 2010 có chế độ xem "Nhãn" rất hữu ích (thay vì "Thay đổi") trong lịch sử của bất kỳ chi nhánh nào. Thật không may, nó chỉ hiển thị các nhãn trong nhánh bạn đã chọn, chứ không phải nhãn trong tất cả các nhánh/thư mục con.

1

Tôi bắt đầu chơi với cố gắng tạo SQL của riêng mình để làm điều này và chạy trực tiếp với cơ sở dữ liệu TFS (s) mình. SQL này được chạy với TFS 2008. Đoạn mã nhỏ này sẽ hiển thị TẤT CẢ các nhãn và các thay đổi cho tất cả các nhánh được sắp xếp với nhãn nhánh/nhãn được tạo gần đây nhất trước tiên. Bước tiếp theo trong việc phát triển này sẽ bằng cách nào đó đi qua các changesets và các nhãn để chỉ mang lại các khu vực mà tôi quan tâm (như 'Main' hoặc một số chi nhánh đặc biệt). Tôi tưởng tượng nếu tôi tạo ra SQL sẽ làm tất cả điều này, nó sẽ là con chó chậm, và sẽ không có GUI đầy đủ tôi muốn đi sâu vào lịch sử cho một tập tin cụ thể, xem nhãn với điều đó, vv Sigh.

select DisplayName, cs.CreationDate, Comment, 'CheckIn' 
from TfsVersionControl.dbo.tbl_Identity i, TfsVersionControl.dbo.tbl_ChangeSet cs 
where cs.ownerid = i.IdentityId 
union 
select DisplayName, LastModified, Comment, 'Label' 
from TfsVersionControl.dbo.tbl_Identity i, TfsVersionControl.dbo.tbl_Label l 
where l.ownerid = i.IdentityId 
order by 2 desc 
Các vấn đề liên quan