Поделиться через


Команда журнала (система управления версиями Team Foundation)

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Команда система управления версиями Team Foundation (TFVC) tf history отображает журнал редакций одного или нескольких файлов или папок. Данные команды отображаются в окне журнала в Visual Studio или /noprompt в командной строке.

Вы также можете использовать Visual Studio для получения журнала редакций. Дополнительные сведения см. в статье "Получение журнала элемента".

Необходимые компоненты

См . разрешения TFVC по умолчанию.

Синтаксис

tf hist[ory] itemspec [/version:versionspec] 
[/stopafter:number] [/recursive] [/user:username] 
[/format:(brief|detailed)] [/slotmode] [/itemmode] [/noprompt]
[/login:username,[password]] [/sort:ascending,descending]
[/collection:TeamProjectCollectionUrl]

Параметры

Параметр

Description

/collection:<TeamProjectCollectionUrl>

Указывает URL-адрес коллекции проектов, содержащей элементы. Например: http://myserver:8080/tfs/DefaultCollection.

По умолчанию коллекция проектов считается той, которая содержит рабочую область, которая сопоставляет текущий каталог.

/format

Указывает, сколько сведений о каждом наборе изменений отображается при указании /noprompt параметра:

  • Brief (по умолчанию): отображает одну строку о каждом наборе изменений, включая идентификатор, изменения, пользователя, вносившего изменения, дату и комментарий. Некоторые данные могут быть усечены.

  • Detailed: отображает полное описание каждого набора изменений. Помимо предыдущих сведений, этот параметр отображает дополнительные данные, такие как дата с временем, изменения элементов, заметки проверка и предупреждения политики проверка.

/itemmode

Этот параметр нельзя объединить с параметром /slotmode . Дополнительные сведения см. в статье Мэтт Митрик: переход на режим слота в TFS 2010.

<itemspec>

Указывает элементы, для которых будет отображаться журнал. Синтаксис см. в разделе "Использование команд управления версиями Team Foundation".

/noprompt

Подавляет отображение окон и диалоговых окон, таких как окно журнала , и перенаправляет выходные данные в командную строку. См . команды управления версиями Team Foundation.

Не отображает журнал исправлений, произошедших до перемещения элемента, переименования, ветвления или объединения.

/login:<username>[,<password>]

Указывает учетную запись пользователя для выполнения команды. См . команды управления версиями Team Foundation.

/recursive

Рекурсивно извлекает исторические данные о элементах в указанном каталоге и любых подкаталогах.

/slotmode

Этот параметр нельзя объединить с параметром /itemmode . Дополнительные сведения см. в статье Мэтт Митрик: переход на режим слота в TFS 2010.

/sort

Сортирует журнал редакций для одного или нескольких файлов или папок в одном из следующих заказов:

  • Ascending: От старой до последней редакции.

  • Descending (по умолчанию): от последней до самой старой редакции.

Этот параметр необходимо использовать /noprompt .

/stopafter:<number>

Указывает максимальное количество наборов изменений, отображаемых в данных журнала.

/user:<username>

Фильтрует исторические данные, чтобы отобразить изменения, внесенные указанным пользователем. Символ звездочки (*) содержит данные об изменениях от всех пользователей по умолчанию.

/version:<versionspec>

Указывает максимальную версию или минимальную и максимальную версию с помощью синтаксиса диапазона ~ . По умолчанию используется /version:Wверсия рабочей области.

Этот параметр нельзя объединить с параметром /slotmode .

Синтаксис см. в разделе "Использование команд управления версиями Team Foundation".

Замечания

  • Чтобы получить более подробные сведения о наборе изменений, например, чтобы просмотреть связанные рабочие элементы:

    • В окне журнала Visual Studio дважды щелкните или щелкните правой кнопкой мыши набор изменений и выберите "Сведения об наборе изменений".

    • В командной строке используйте команду Changeset.

  • Этот /collection параметр полезен для выполнения этой команды с компьютера и учетной записи пользователя, которая не имеет рабочей области, сопоставленной с коллекцией проектов, содержащей элементы.

Примеры

В следующих примерах предполагается, что c:\code\SiteApp\Main сопоставляется с главной папкой в рабочей области.

Получение журнала одного файла

В следующем примере отображаются все изменения, внесенные в program2.cs в окне журнала .

c:\code\SiteApp\Main\SolutionA\Project1>tf history program2.cs

В следующем примере отображаются все изменения, внесенные в program2.cs в окне командной строки.

c:\code\SiteApp\Main\SolutionA\Project1>tf history program2.cs /noprompt

Выходные данные:

Changeset Change                     User              Date       Comment
--------- -------------------------- ----------------- ---------- -------- 
29        edit                       Jamal Hartnett    4/23/2012  Fix bug
20        add                        Raisa Pokrovskaya 4/12/2012  Add new  

Получение журнала всех элементов в папке

В следующем примере отображаются все изменения, внесенные во все элементы в SolutionA, в том числе в вложенных папках, в окне журнала .

c:\code\SiteApp\Main\SolutionA>tf history * /recursive

Получение журнала последних пяти изменений для всех элементов в папке

В следующем примере отображаются последние пять изменений, внесенных в элементы в SolutionA, в том числе в вложенных папках, в окне командной строки:

c:\code\SiteApp\Main\SolutionA>tf history * /noprompt /recursive /stopafter:5

Выходные данные:

Changeset User              Date       Comment
--------- ----------------- ---------- ----------------------------------------
31        Raisa Pokrovskaya 5/15/2012
30        Raisa Pokrovskaya 4/23/2012
29        Jamal Hartnett    4/23/2012  Fix bug in new method
20        Raisa Pokrovskaya 4/12/2012  Add new method, add program2.cs to Proje
15        Raisa Pokrovskaya 4/8/2012

Получение журнала из версии x и более ранних версий

В следующем примере отображаются изменения, внесенные во все элементы в SolutionA, в том числе в вложенных папках, в версии 30 и более ранних версиях в окне командной строки:

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:30

Выходные данные:

Changeset User              Date       Comment
--------- ----------------- ---------- ----------------------------------------
30        Raisa Pokrovskaya 4/23/2012
29        Jamal Hartnett    4/23/2012  Fix bug in new method
20        Raisa Pokrovskaya 4/12/2012  Add new method, add program2.cs to 
15        Raisa Pokrovskaya 4/8/2012

Получение журнала из даты D и более ранних версий

В следующих примерах отображаются изменения, внесенные во все элементы в SolutionA, в том числе в вложенных папках, на 4.23.12 или более ранней версии в окне командной строки:

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D4/24/2012

Или сделайте так:

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D2012-04-24T12:00

Выходные данные:

Changeset User              Date       Comment
--------- ----------------- ---------- ----------------------------------------
30        Raisa Pokrovskaya 4/23/2012
29        Jamal Hartnett    4/23/2012  Fix bug in new method
20        Raisa Pokrovskaya 4/12/2012  Add new method, add program2.cs to 15        Raisa Pokrovskaya 4/8/2012

Получение журнала из диапазона дат

В следующем примере отображаются изменения, внесенные во все элементы в SolutionA, в том числе в вложенных папках, в период с 4.12.2012 по 4.23.2012 в окне командной строки:

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D4/12/2012~D4/24/2012

Выходные данные:

Changeset User              Date       Comment
--------- ----------------- ---------- ----------------------------------------
30        Raisa Pokrovskaya 4/23/2012
29        Jamal Hartnett    4/23/2012  Fix bug in new method
20        Raisa Pokrovskaya 4/12/2012  Add new method, add program2.cs to 

Получение подробной истории

В следующем примере отображаются сведения об изменениях, внесенных во все элементы в SolutionA, в том числе в вложенных папках, в период с 4.12.2012 по 4.23.2012 в окне командной строки:

c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D4/12/2012~D4/24/2012 /format:detailed

Выходные данные:

-------------------------------------------------------------------------------
Changeset: 30
User: Raisa Pokrovskaya (Fabrikam)
Date: Monday, April 23, 2012 1:23:05 PM

Comment:
  Much better name for this file

Items:
  rename                $/SiteApp/Main/SolutionA/Project1/programBig.cs
  delete, source rename $/SiteApp/Main/SolutionA/Project1/program3.cs;X15

-------------------------------------------------------------------------------
Changeset: 29
User: Raisa Pokrovskaya (Fabrikam)
Date: Monday, April 23, 2012 1:03:13 PM

Comment:
  Fix bug in new method

Items:
  edit $/SiteApp/Main/SolutionA/Project1/program1.cs
  edit $/SiteApp/Main/SolutionA/Project1/program2.cs

-------------------------------------------------------------------------------
Changeset: 20
User: Raisa Pokrovskaya (Fabrikam)
Date: Thursday, April 12, 2012 5:09:35 PM

Comment:
  Add new method, add program2.cs to Project1

Items:
  add $/SiteApp/Main/SolutionA/Project1/program2.cs

Check-in Notes:
  Documentation:
    An important new part of our codebase.

Policy Warnings:
  Override Reason:
    Jamal agrees with me that we can bypass for this check-in.
  Messages:
    The Code Analysis Policy requires files to be checked in through Visual
Studio with an open solution.

Получение не рекурсивной истории папки

В следующем примере отображается журнал папки SolutionA в окне журнала Visual Studio, что позволяет изучить предыдущие изменения в папке. Например, если последнее изменение папки было переименовано, можно развернуть набор изменений, чтобы увидеть изменения, произошедшие до переименования.

c:\code\SiteApp\Main\SolutionA>tf history .

В следующем примере отображается последнее изменение папки SolutionA в окне командной строки.

c:\code\SiteApp\Main\SolutionA>tf history . /noprompt