2012-04-04 10 views
15

Giả sử có một dự án TFS Project với các thư mục con trunk1.0. trunk chứa phiên bản mới nhất của mã ứng dụng cho dự án này và 1.0 chứa mã cho cùng một ứng dụng cho phiên bản đã phát hành có cùng tên.Làm thế nào tôi có thể tìm thấy tất cả các nhãn cho một thư mục con dự án TFS cụ thể?

Có các nhãn cho cả hai thư mục con và tất cả các nhãn bao gồm các tệp chỉ trong một trong các thư mục con. [Bạn cũng có thể giả định rằng các nhãn đệ quy trên một thay đổi cụ thể (tối đa) cho tất cả các tệp trong toàn bộ thư mục con nếu nó đơn giản hóa câu trả lời của bạn.]

Làm cách nào để tạo danh sách nhãn của các thư mục con này, sử dụng Visual Studio, công cụ dòng lệnh TFS tf.exe hoặc bất kỳ công cụ hoặc mã nào khác công khai (và tự do) có sẵn.

Lưu ý - Tôi đã viết mã T-SQL truy vấn cơ sở dữ liệu kiểm soát phiên bản TFS trực tiếp để tạo ra thông tin này, nhưng tôi tò mò liệu có 'cách' tốt hơn để làm như vậy hay không.

Trả lời

27

Trong Visual Studio, trong cửa sổ Source Control Explorer, nhấn phải chuột lên thư mục con mà bạn muốn vào danh sách các nhãn có liên quan và chọn Xem lịch sử từ menu ngữ cảnh. Trong cửa sổ Lịch sử sẽ xuất hiện, phải có một tab phụ Nhãn (như được đánh dấu bên dưới) liệt kê các nhãn được áp dụng cho thư mục con đó (nhưng không liệt kê các mục cụ thể trong thư mục con đó).

enter image description here

+0

Xin chào, đây là hiển thị các nhãn chỉ tạo ra cho workspsace của tôi (của tôi), làm thế nào tôi có thể xem các nhãn khác được tạo ra bởi những người dùng khác? .. – ansar

+0

@ansar tôi không sử dụng TFS hiện vì vậy tôi có thể 't kiểm tra, nhưng tôi không nhớ điều này bị hạn chế bởi không gian làm việc trong phiên bản của TFS tôi đã sử dụng; Tôi chắc chắn đã không tạo ra các nhãn tôi tìm thấy. –

+0

@ansar Điều gì về [tinman's answer] (http://stackoverflow.com/a/32891259/173497)? –

2

Để tìm nhãn trong Visual Studio

  1. mở Nguồn Control Explorer.

  2. Trong Nguồn Control Explorer, mở menu chuột phải cho bộ sưu tập, nhóm dự án, chi nhánh, thư mục, hoặc tập tin mà bạn đang tìm kiếm.

  3. Chọn Xem lịch sử. Bạn sẽ thấy một cửa sổ mới với tất cả Thay đổi.

  4. Chọn Nhãn trong menu tab như được đánh dấu trong hình bên dưới.

enter image description here

+0

Lưu ý rằng nếu bạn đã gắn nhãn các chi nhánh trong một thư mục, các nhãn đó sẽ không hiển thị theo cách này cho thư mục mẹ. Bạn phải làm View History trên mỗi nhánh thật không may. – AaronLS

2

tôi cần phải làm điều này trên dòng lệnh hiện nay vì vậy đây là một tập tin batch để hy vọng làm điều tương tự (chúng tôi chỉ mới bắt đầu sử dụng TFS và đã nhãn giới hạn về thư mục để kiểm tra các yêu cầu của OP).

Bạn cần chỉnh sửa thông số thu thập thành tf cho bất kỳ thiết lập nào của bạn và có thể cung cấp chi tiết đăng nhập tùy thuộc vào cách xác thực của bạn được thực hiện.

@ECHO OFF 
SETLOCAL EnableDelayedExpansion 

@REM Check required parameters 
IF [%1]==[] GOTO :usage 

tf labels /owner:* /format:detailed %2 /collection:http://server:8080/tfs/collection > labels.txt 2> nul 

SET CURRENT_LABEL= 
FOR /F "tokens=1,2,3" %%G IN (labels.txt) DO (
    IF [%%G]==[Label] (
     SET CURRENT_LABEL=%%I 
    ) ELSE (
     IF /I [%%H]==[%1] (
      ECHO !CURRENT_LABEL! 
     ) 
    ) 
) 
DEL labels.txt 

GOTO :eof 
@REM Subroutines 

:usage 
echo tfs_labelsforfolder - Display all labels that are applied to a folder. 
echo. 
echo tfs_labelsforfolder ^<folder^> ^[label_filter^] 
echo. 
echo  folder  - The folder to show the labels for, e.g. $/Project/folder 
echo  label_filter - Search pattern to use in tf labels command. 
echo. 
GOTO :eof 
Các vấn đề liên quan