Заметки о выпуске Team Foundation Server 2017 с обновлением 1Team Foundation Server 2017 Update 1 Release Notes

Последнее обновление 31.01.2018

Последние обновления см. на странице Заметки о выпуске на английском языке.To see the latest updates, please visit the English Release Notes.

Дата выпуска: 7 марта 2017 г.Release Date: March 7, 2017

Мы с радостью сообщаем о выпуске Team Foundation Server 2017 с обновлением 1.We are happy to announce the release of Team Foundation Server 2017 Update 1. Этот новый выпуск включает последние улучшенные и принципиально новые функциональные возможности.This new release includes our most recent feature innovations and improvements. Сведения о требованиях можно найти на странице Требования к Team Foundation Server и совместимость.You can find requirement information on the Team Foundation Server Requirements and Compatibility page.

Скачать: Team Foundation Server 2017 с обновлением 1Download: Team Foundation Server 2017 Update 1

Дополнительные сведения о связанных загружаемых файлах см. на странице Загрузки.To learn more about other related downloads, see the Downloads page.

Новые возможности в TFS 2017 с обновлением 1What's New in TFS 2017 Update 1


Известные проблемыKnown Issues


Новые возможностиWhat's New

Более персонализированные возможности работы More personal experiences

Домашняя страница персонализированной коллекцииPersonalized collection home page

В этом выпуске очень легко получить доступ к самым важным для вас артефактам.With this release, it's super easy for you to access artifacts that are most important to you. Обновленная страница коллекции (рис. 1) теперь отображает самые важные для вас проекты, избранное, рабочие элементы и запросы на включение внесенных изменений.The redesigned collection page (Figure 1) has a personalized experience that shows the Projects, Favorites, Work, and Pull Requests you care about. На ней очень удобно начать работу.This makes for a great way to start your day. Все необходимое легко найти в одном месте.You can go to one place and quickly find everything you need and care about. Дополнительные сведения см. в статье о домашних страницах учетной записи.See Account hub pages for more information.

Redesigned collection page

Рис. 1. Измененная страница коллекции
Redesigned collection page
(Figure 1) Redesigned collection page

Проект получает идентификаторYour project gets an identity

Теперь общие сведения о проекте можно получить в одном месте.There is now one place to get an overview of your project. На новой странице проекта можно легко просматривать и редактировать описание проекта, просматривать и добавлять участников, а также проверять последние действия по проекту.The new project page makes it easy to view and edit the project description, view or add members, and check on the latest activity. Начинать работу с новыми проектами и пользоваться всеми встроенными функциями DevOps в TFS стало еще проще.It is even easier to get started with a new project, and leverage all the built-in DevOps functionality of TFS.

Усовершенствования управления версиями Version Control Improvements

Изменения разрешений для администратора репозитория Repo admin permission changes

В репозиториях Git мы разделили разрешение Администрирование на несколько более детализированных разрешений.For Git repos, we’ve divided the Administer permission into several more granular permissions. Это обеспечит дополнительную гибкость, чтобы вы могли решить, кто может выполнять отдельные действия.This gives you more flexibility to decide who can perform what actions. Например, вы можете разрешить всем в учетной записи создавать репозитории, но запретить удалять их, удалять пользователей из репозитория или добавлять их в него.For instance, you may allow anyone in your account to create new repositories, but disallow them from deleting repos or adding new users to a repo. Новые разрешенияThe new permissions are:

  • Управление разрешениями: добавление и удаление пользователей и разрешений.Manage permissions: Add/remove users and permissions.
  • Создание: создание репозитория.Create: Create a new repo.
  • Удаление: удаление репозитория.Delete: Delete a repo.
  • Переименование: переименование репозитория.Rename: Rename a repo.
  • Изменение политик: настройка политик ветвей.Edit policies: Configure branch policies.
  • Удаление блокировок других пользователей: удаление блокировок ветви, заданных другим пользователем.Remove others’ locks: Remove branch locks set by another user.

Эти разрешения можно применять как к отдельным репозиториям, так и ко всем в проекте.These permissions can be applied to all repositories in a project, or to individual repositories.

Улучшения политики ветвей Branch policy improvements

В разделе Политики (рис. 2) обязательные и необязательные политики теперь группируются в разделы.In the Policies section (Figure 2), the required and optional policies are now grouped into sections. Это позволяет точно узнать, какие политики необходимы для завершения запроса на включение внесенных изменений.This clarifies exactly which policies are required in order to complete a PR. Необходимые рецензенты также объединены в разделе требований и будут отмечены как допустимые только после утверждения всех требуемых рецензентов.Required reviewers are also summarized in the required section, and will only be marked as passing when all required reviewers have approved.

Policies section

Рис. 2. Раздел "Политики"
Policies section
(Figure 2) Policies section

Если вы хотите обойти политики (и у вас есть нужные разрешения), теперь для этого доступны новые функции в диалоговом окне Завершить (рис. 3).If you need to bypass policies (and have the required permissions), a new experience will be shown in the Complete dialog (Figure 3). Все невыполненные политики будут указаны в сообщении с предупреждением, и будет доступен новый параметр явного соглашения на переопределение политик.Any policies that are not met will be shown in a warning message, and a new explicit option to opt-in to override policies will be presented. Установка флажка переопределения позволит использовать действие Переопределить и завершить, которое завершит PR, переопределив политики со сбоями.Checking the override option will enable the Override & Complete action, which will complete the PR, overriding any failing policies.

Complete dialog

Рис. 3. Диалоговое окно выполнения запроса
Complete dialog
(Figure 3) Complete dialog

Поддержка исключений файлов в требуемой политике рецензентовSupport file exclusions in the required reviewer policy

Указывая необходимых рецензентов для определенных путей к файлам, можно исключить пути с помощью префиксаWhen specifying required reviewers for specific file paths, you can now exclude paths by using a “!” "!".prefix to the path you want to exclude. Например, его можно использовать для исключения папки "docs" из необходимого вам стандартного утверждения (рис. 4).For example, you can use this to exclude a docs folder from your normally required signoff (Figure 4).

File exclusion support

Рис. 4. Поддержка исключения файлов
File exclusion support
(Figure 4) File exclusion support

Импорт репозиторияImport repository

Теперь вы можете импортировать репозиторий Git из GitHub, BitBucket, GitLab и других расположений.You can now import a Git repository from GitHub, BitBucket, GitLab, or other locations. Импортировать данные можно в новый или существующий пустой репозиторий.Import into either a new, or existing empty repository. Дополнительные сведения см. в статье Import a Git repo (Импорт репозитория Git).For more information, see Import a Git repo.

Добавление файла .gitignore во время создания репозиторияAdd .gitignore during repo creation

При создании репозитория Git теперь можно добавить и связать с репозиторием файл .gitignore.While creating a new Git repository, you can now add and associate a .gitignore file with your repository. Файл .gitignore указывает файлы, которые следует игнорировать Git при выполнении фиксации.A .gitignore file specifies files that Git should ignore while performing a commit.

В диалоговом окне можно выбрать один из множества доступных шаблонов .gitignore (рис. 5).The dialog allows you to select one of the many available .gitignore templates (Figure 5).

Add .gitignore during repo creation

Рис. 5. Добавление файла GITIGNORE при создании репозитория
Add .gitignore during repo creation
(Figure 5) Add .gitignore during repo creation

Выборочный отбор и отмена измененийCherry-pick and revert

Мы добавили две новых функции, упрощающие перенос или возврат изменений с веб-портала: выборочный отбор и отмена изменений.We’ve added two new features that make it easier to port or back out changes from the web portal: Cherry-pick and Revert.

Команда выборочного отбора используется для переноса изменений в запросе на включение внесенных изменений в несколько ветвей.Use the cherry-pick command to port changes in a pull request to multiple branches. Распространенным вариантом является необходимость исправления ошибки, причем сделать это требуется и в основной программе.A typical use case is when a bug needs to be hotfixed, but should also be fixed in the mainline. После создания запроса на включение внесенных изменений, содержащего исправление для ветви исправления, можно без труда отобрать это исправление и скопировать его в главную ветвь.Once you’ve created your pull request that contains the fix to the hotfix branch, you can easily cherry-pick the same fix into the master branch. Дополнительные сведения см. в статье Copy changes with cherry-pick (Копирование изменений с помощью выборочного отбора).See Copy changes with cherry-pick for more information.

Можно отменить изменения по выполненному запросу на включение внесенных изменений.You can revert changes on completed PRs. Найдите запрос на включение внесенных изменений с неверным изменением, нажмите Revert (Отменить изменения) и выполните действия по созданию запроса на включение внесенных изменений, в котором нежелательные изменения будут удалены.Find the PR that introduced the bad change, click Revert, and follow the steps to create a PR that backs out the unwanted changes. Дополнительные сведения см. в статье Undo Changes with Git (Отмена изменений в Git).For more information, see Undo Changes with Git.

Настраиваемая сравниваемая ветвьConfigurable compare branch

Теперь для сравниваемой ветви можно задать значение, отличное от ветви по умолчанию.You can now set your compare branch to something other than the default branch. Этот параметр будет храниться на уровне каждого пользователя.This setting will be remembered on a per-user basis. В основе запросов на включение внесенных изменений и ветвей, созданных на странице Branches (Ветви), будет находиться ветвь, заданная в качестве сравниваемой.Pull requests and new branches created from the Branches page will be based off the branch you set as the compare branch. Дополнительные сведения см. в статье Manage your branches (Управление ветвями).See Manage your branches for more information.

Поиск файла или папкиFind a file or folder

На странице Code (Код) в проекте Team Services можно быстро найти файл или папку в репозитории.You can quickly search for a file or folder in a repository using the Code hub in your Team Services project. В списке результатов будут отображены элементы из текущей папки с указанием файлов и папок в репозитории.The result lists items from your current folder followed by files and folders across the repository.

Чтобы найти в любом репозитории Git файлы или папки, перейдите в поле пути (рис. 6) и начните ввод с клавиатуры.For any Git repository, go to the path control box (Figure 6), and start typing to initiate a navigation search experience for the file, or folder you are looking for.

Find a file or folder

Рис. 6. Поиск файла или папки
Find a file or folder
(Figure 6) Find a file or folder

Подтверждение при удалении репозиториевConfirmation for deleting repos

Чтобы исключить случайные удаления репозиториев, для подтверждения удаления необходимо ввести имя соответствующего репозитория.To prevent accidental repository deletions, you now have to type the name of the repository that you wish to delete to confirm the action.

избранные репозиторииRepo favorites

Теперь вы можете включить часто используемые репозитории в список "Избранное".You can now favorite the repos you work with most frequently. В средстве выбора репозитория (рис. 7) вы увидите вкладки Все репозитории и Избранное.In the repo picker (Figure 7), you will see tabs for All repositories and your Favorites. Щелкните значок звездочки, чтобы добавить репозиторий в список "Избранное".Click the star to add a repository to your list of Favorites.

Repo favorites

Рис. 7. Избранные репозитории
Repo favorites
(Figure 7) Repo favorites

Поиск файла или папки в журнале фиксацииSearch for a file or folder in commit history

Теперь вы можете искать в репозитории файлы и папки так же, как и на вкладке "Файлы", и просматривать по ним журнал фиксаций.Similar to the files tab, you can now search for a file or folder in a repository and see the history of commits for that file or folder. Чтобы найти в любом репозитории Git журналы по файлам или папкам, перейдите на вкладке "Журнал" в поле пути (рис. 8) и начните ввод с клавиатуры.For any Git repository, go to the path control box on the History tab (Figure 8), and start typing to initiate a history search experience for the file, or folder you are looking for.

Commit history

Рис. 8. Журнал фиксаций
Commit history
(Figure 8) Commit history

Улучшения страницы фиксацийCommit page improvements

Мы оптимизировали страницу сведений о фиксации и страницу журнала фиксаций, сделав информацию на них более актуальной, а работу с ними — более удобной.We made your experience of the commit details page and commit history page up-to-date and highly performant. Теперь вы можете быстро получить здесь всю ключевую информацию о фиксации и перейти к необходимым действиям.You can now find, and act on, important information related to the commit at a bird’s-eye view.

Пример страницы сведений о фиксации (рис. 9):Here is an example of the commit details page (Figure 9):

Commit details

Рис. 9. Сведения о фиксации
Commit details
(Figure 9) Commit details

Пример страницы журнала фиксаций (рис. 10):Here is the commit history page (Figure 10):

Commit history

Рис. 10. Журнал фиксаций
Commit history
(Figure 10) Commit history

Поиск фиксаций в ветвяхSearch for commits in branches

Теперь вы можете искать фиксации в указанной ветви или теге. Для этого на странице сведений о фиксациях нажмите кнопку Искать в ветвях (рис. 11).You can now search for a commit in a specified branch or a tag by clicking on the Search in branches button on the commit details page (Figure 11).

Commit search

Рис. 11. Поиск фиксаций
Commit search
(Figure 11) Commit search

В окне можно выбирать для просмотра теги и ветви, даже если они не содержат искомую фиксацию (рис. 12).You can select tags and branches in the window to view, even if these branches and tags do not contain the particular commit (Figure 12).

Commit search dialog

Рис. 12. Диалоговое окно поиска фиксаций
Commit search dialog
(Figure 12) Commit search dialog

Панель инструментов для управления обсуждением Discussion control toolbar

Markdown — это многофункциональный инструмент для добавления комментариев в запросы на включение внесенных изменений, но его синтаксис сложно запомнить.Markdown is a powerful tool when adding comments to pull requests, but it can be hard to remember the syntax. Чтобы облегчить эту задачу, мы добавили в элемент управления обсуждением специальную панель инструментов (рис. 13).To make this easier, we’ve added a toolbar to the discussion control (Figure 13). Она позволяет вставить нужный синтаксис Markdown для типичного форматирования.This will insert the appropriate Markdown syntax to add common formatting. Заголовки, полужирный шрифт, курсив, ссылки, код, списки и такие функции, как @ и упоминания через #, можно добавить с помощью новых элементов управления панели инструментов.Headings, boldface, italics, links, code, and lists can all be added using the new toolbar controls, and features like @ and # mentions can be entered using the toolbar as well. Используйте сочетания клавиш, чтобы применить жирный шрифт (CTRL+B), курсив (CTRL+I) и создавать ссылки (CTRL+K).Keyboard shortcuts are available for boldface (CTRL + B), italics (CTRL + I), and creating links (CTRL + K).

Discussion toolbar

Рис. 13. Панель инструментов обсуждения
Discussion toolbar
(Figure 13) Discussion toolbar

Улучшения комментирования PR PR comment improvements

Чтобы вам было проще видеть новые комментарии в запросах на включение внесенных изменений, мы добавили дополнительное оформление в новые ответы в существующих беседах.To help you better identify the new comments in their PR, we’ve added some additional decoration to the new replies in existing discussion threads. Представление комментариев в файлах также выделяет беседы с новыми комментариями (рис. 14).Comments in the files view will also highlight threads that have new comments (Figure 14).

PR comment

Рис. 14. Улучшения в комментариях к запросам
PR comment
(Figure 14) PR comment improvements

Просмотр PR для фиксации View PRs for a commit

Теперь вы можете просмотреть все связанные запросы на включение внесенных изменений для фиксации на странице Сведения о фиксации.You can now view all associated pull requests for a commit on the Commit details page. На изображении (рис. 15) можно увидеть следующее:From the image below (Figure 15), you can see that:

  • В связанном раскрывающемся списке запросов на включение внесенных изменений есть два запроса, связанных с этой фиксацией.In the associated pull request drop-down, there are two pull requests associated with this commit.
  • Запрос на включение внесенных изменений №2 перенес эту фиксацию в мастер-копию.Pull request #2 brought this commit to master.
  • Та же фиксация была внесена в ветвь 4 с помощью запроса на включение внесенных изменений №1.The same commit was brought into branch 4 via pull request #1.

PR in commits

Рис. 15. Запросы на вытягивание в фиксациях
PR in commits
(Figure 15) PR in commits

Отслеживание запроса на включение внесенных измененийFollow a pull request

Вы можете отслеживать запрос на получение внесенных изменений и получать уведомления о любых изменениях с помощью оповещений по электронной почте.You can now follow a pull request to stay notified of any changes via email alerts. Для этого предназначена команда Следовать (рис. 16) в контекстном меню.The option to Follow is available in the context menu (Figure 16).

Follow a pull request

Рис. 16. Подписка на запрос на вытягивание
Follow a pull request
(Figure 16) Follow a pull request

Перезапуск слияния запросов на включение внесенных измененийRestart pull request merge

Добавлен параметр для выполнения повторной попытки слияния запроса на включение внесенных изменений в случае обновления конечной ветви.Another option has been added to re-attempt the merge for a pull request where the target branch has been updated. Параметр Restart merge (Перезапустить слияние) полезен, если необходимо убедиться, что последние изменения конечной ветви не вызвали конфликтов или нарушили сборку запроса.This Restart merge option is useful when you want to verify that recent changes to the target branch haven’t created conflicts or broken your PR build.

Выполнение заблокированных или отклоненных запросов на включение внесенных измененийCompletion blocked on rejected pull requests

Ветви, для которых задана политика проверки кода, покажут, что запрос на включение внесенных изменений не может быть выполнен, если он отклонен одним или несколькими рецензентами.Branches that have the code review policy set will show that the PR is unable to be completed if it is rejected by one or more reviewers. Многие из вас всегда ожидали именно такого поведения, поэтому мы изменили поведение по умолчанию.Many of you expected this behavior, so we’ve changed the default behavior. Для команд специалистов, которым требуется исходное поведение, доступен новый параметр на странице параметров политики ветви (рис. 17).For teams that want the original behavior, there is a new option in the branch policy setting page (Figure 17).

Code review policy

Рис. 17. Политика проверки кода
Code review policy
(Figure 17) Code review policy

Форматирование Markdown в описании запроса на включение внесенных измененийMarkdown in pull request description

Оживите описание запроса на включение внесенных изменений с помощью Markdown.Spice up your pull request description with Markdown. Хорошо знакомая вам поддержка Markdown в запросах на включение внесенных изменений теперь доступна в описаниях запросов на включение внесенных изменений.The same Markdown support you know and love in pull request comments is now available in the pull request description.

Вложения в обсуждениях запросов на включение внесенных измененийAttachments in PR discussions

Теперь в комментарии к запросу на включение внесенных изменений можно добавлять вложения (рис. 18).You can now add attachments to your pull request comments (Figure 18). Для этого используются функции перетаскивания или обзора.Attachments can be added by drag-and-drop or by browsing. Чтобы вложить изображения, просто вставьте нужную картинку из буфера обмена.For images, attachments can be added by simply pasting from the clipboard. При добавлении вложения комментарий автоматически обновляется и включает ссылку Markdown на новое вложение.Adding an attachment automatically updates the comment to include a Markdown reference to the new attachment.

Attachments in PR discussions

Рис. 18. Вложения в обсуждениях к запросам на вытягивание
Attachments in PR discussions
(Figure 18) Attachments in PR discussions

Выделение запросов на включение внесенных изменений с обновлениямиHighlight the PRs that have updates

Теперь отслеживание обновлений в запроса на включение внесенных изменений стало еще проще.It’s now easier than ever to see the updates to your pull requests. В представлении списка (рис. 19) запросы, имеющие изменения с момента их последнего просмотра, отображаются с новым столбцом, где показана сводка обновлений.In the PR list view (Figure 19), PRs with changes since you've last seen them, are shown with a new updates column that shows a roll-up of the changes.

PR updated files

Рис. 19. Обновленные файлы в запросах на вытягивание
PR updated files
(Figure 19) PR updated files

При просмотре запроса с изменениями вы увидите похожее сводное сообщение в разделе обзора.When you view a PR that has changes, you’ll see a similar summary message in the overview. Новые цепочки уведомлений и комментариев выделены синим цветом (рис. 20).New pushes and comment threads are highlighted in blue (Figure 20). Перейдя по ссылке Просмотреть обновления кода, вы попадете в представление Файлы, в котором отображаются новые изменения, появившиеся с момента последнего просмотра запроса на включение внесенных изменений.Clicking the View code updates link will navigate to the Files view, where a diff of the new changes since you last viewed the pull request is shown. Эта функция упрощает отслеживание запросов, в которые автор внес изменения в ответ на отзывы.This feature makes it easy to follow up on a PR where the author made changes in response to feedback.

PR summary

Рис. 20. Сводка по запросу на вытягивание
PR summary
(Figure 20) PR summary

Политика ветвей для стратегии слияния запросов на включение внесенных измененийBranch policy for PR merge strategy

Мы добавили для ветвей новую политику (рис. 21), которая позволяет задавать стратегию слияния запросов на включение внесенных изменений для каждой ветви.We’ve added a new branch policy (Figure 21) that lets you define a strategy for merging pull requests for each branch. В прошлом решение о слиянии или сжатом слиянии принималось при завершении запроса на включение внесенных изменений.Previously, you chose the decision to either merge or squash at the time a PR was completed. Если политика включена, она переопределит ваши настройки и применит свое требование.If enabled, this policy will override your preferences, enforcing the requirement set by the policy.

Branch policy

Рис. 21. Политика ветвей
Branch policy
(Figure 21) Branch policy

Отображение сведений о конфликтах слиянияExpose merge conflict information

Если в запросе на включение внесенных изменений имеются файлы с конфликтами, сведения об этих конфликтах будут отображаться в разделе обзора (рис. 22).If there are any files with conflicts in a pull request, the details about those conflicts will now be visible in the overview (Figure 22). Каждый конфликтующий файл будет представлен в списке с краткими сведениями о типе конфликта между исходной и целевой ветвями.Each conflicting file will be listed, along with a short summary of the type of conflict between the source and target branches.

Merge conflicts

Рис. 22. Конфликты слияния
Merge conflicts
(Figure 22) Merge conflicts

Кнопка предварительного просмотра MarkdownMarkdown preview button

При просмотре отличий файла markdown в фиксации или запросе на включение внесенных изменений можно легко выбирать нужное результирующее представление.When viewing a diff of a markdown file in a commit, push, or pull request, you can now easily toggle to see the resulting rendered view.

Усовершенствования отслеживания рабочих элементов Work Item Tracking Improvements

Улучшенные возможности поиска ограниченных полей идентификацииImproved search experience for scoped identity fields

В этом выпуске мы изменили поведение средства выбора удостоверения для ограниченных полей идентификации, то есть тех, которые позволяют делать назначения только определенной группе пользователей.With this release, we updated the identity picker behavior for scoped identity fields, i.e. identity fields that are configured to only allow assignment to a specific group of users. По новой схеме в списке последних выбиравшихся файлов и результатах поиска будут возвращены только элементы заданной группы, а не результаты по всем допустимым пользователям коллекции.In the updated experience, the picker’s MRU list and search results will only return members of the configured group, rather than show results for all valid users for the collection.

Усовершенствования сборок Build Improvements

Откат определений сборокRollback build definitions

Определение сборки можно откатить к предыдущей версии.You can roll a build definition back to a previous version. Это можно сделать при редактировании определения сборки на вкладке Журнал.You can do this when editing a build definition by going to the History tab.

Отключение синхронизации и извлечение источников в сборкеDisable the sync and checkout of sources in a build

При необходимости можно отключить автоматическую синхронизацию и извлечение источников в Git.You can optionally disable the automatic source sync and checkout for Git. Это позволит обрабатывать операции с источниками в задаче или скрипте, а не полагаться на встроенное поведение агента.This will enable you to handle the source operations in a task or script, instead of relying on the agent’s built-in behavior. Все стандартные связанные с источником переменные, такие как Source.Version, Source.Branch и Build.SourcesDirectory, установлены.All standard source-related variables like Source.Version, Source.Branch, and Build.SourcesDirectory are set.

Пустой клон Git и git-lfs (хранилище для больших файлов)Git shallow clone and git-lfs

Теперь агент сборки поддерживает пустой клон Git и git-lfs (хранилище для больших файлов).The build agent now supports Git shallow clone and git-lfs. Дополнительные сведения см. в разделе Страница репозитория определения сборки.For more details, see the Build definition repository page.

Управление версиями задач для определений сборки и выпускаTask versioning for Build and Release definitions

Вы можете контролировать основной номер версии задачи, выполняемой в сборке или выпуске.We’ve given you control over the major version of a task that you run in your build or release. Это изменение позволит уменьшить количество непредвиденных ошибок, которые возникали при автоматическом обновлении версии задачи и агента.This change will result in fewer unpredictable errors that were caused by automatic updates to the agent and task version. Основной номер версии задачи можно указать на вкладке Build (Сборка) определения или на вкладке Environments (Среды) определения выпуска.You now specify the major version of the task on the Build tab of your definition, or on the Environments tab of your release definition.

При выходе дополнительного номера версии (например, с 1.2 по 1.3) в сборке автоматически появится соответствующее изменение.When a minor version is released (for example, 1.2 to 1.3), you get that change automatically in your build. Но в случае выхода нового основного номера версии (например, 2.0) сборка будет заблокирована на версии 1.3 до тех пор, пока вы не измените определение и вручную не укажете новый основной номер версии.But if a new major version is released (for example 2.0), then your build stays locked to version 1.3 until you edit the definition and manually change to the new major version. Новый основной номер версии будет обозначен флагом в определении сборки.A flag in the build definition alerts you to new major versions.

Оплата, необходимая для управления пакетами Payment required for Package Management

Чтобы и далее использовать управление пакетами, вам нужна подписка Visual Studio Enterprise или лицензия на управление пакетами, приобретенная в Marketplace.To continue using Package Management, you will either need a Visual Studio Enterprise subscription or a Package Management license purchased in the Marketplace. Дополнительные сведения о лицензиях на управление пакетами см. в этой статье.You can read more about licensing Package Management.

Усовершенствования пакетов Package Improvements

Представления выпусков в управлении пакетамиRelease views in Package Management

В службу управления пакетами добавлена новая возможность — представления выпуска (рис. 23).We've added a new feature to Package Management called release views (Figure 23). Представления выпусков — это подмножество версий пакетов в веб-канале, которые были повышены до уровня представления выпуска.Release views represent a subset of package-versions in your feed that you've promoted into that release view. Создавая представление выпуска и предоставляя потребителям пакета общий доступ к нему, вы можете контролировать версии, от которых они зависят.Creating a release view and sharing it with your package's consumers enables you to control which versions they take a dependency on. Это особенно полезно в сценариях непрерывной интеграции, когда вы часто публикуете версии обновленных пакетов, но можете не объявлять или поддерживать каждую опубликованную версию.This is particularly useful in continuous integration scenarios where you're frequently publishing updated package versions, but may not want to announce or support each published version.

Чтобы приступить к работе, перейдите на панель быстрого запуска в Web Access или ознакомьтесь со сведениями о представлениях выпуска для пакета CI/CD.Look for the quick start in Web Access or learn about release views for package CI/CD to get started.

Release views in Package Management

Рис. 23. Представления выпусков
Release views in Package Management
(Figure 23) Release views

npm в управление пакетамиnpm in Package Management

Теперь веб-каналы управления пакетами поддерживают пакеты npm для разработки на Node.js и JavaScript.Package Management feeds now support npm packages for Node.js and JavaScript development. Кроме того, веб-канал npm поддерживает npmjs.com в качестве вышестоящего источника с кэшированием.In addition, npm feeds support npmjs.com as an "upstream source with caching." Эта возможность позволяет веб-каналу прозрачно использовать прокси-сервер и кэшировать пакеты с npmjs.com (дополнительные сведения см. в статье Использование пакетов с npmjs.com). Это означает, что достаточно только один раз получить определенный пакет package@version с npmjs.com, и последующие запросы к этому пакету будут выполняться напрямую с сервера TFS.By enabling this option, your feed will transparently proxy and cache packages from npmjs.com (see Use packages from npmjs.com), which means that you'll only need to get a particular package@version from npmjs.com once; future requests for that package will be served directly from your TFS server. При удалении пакета из npmjs.com вы по-прежнему сможете получить его кэшированную версию из TFS.If a package is removed from npmjs.com, you'll still be able to get the cached version from TFS.

Чтобы приступить к работе, найдите новый параметр "npm" в диалоговом окне Подключение к веб-каналу (рис. 24).To get started, look for the new npm option in the Connect to feed dialog (Figure 24).

npm in Package Management

Рис. 24. Канал npm в управлении пакетами
npm in Package Management
(Figure 24) npm in Package Management

Кроссплатформенные улучшения Cross Platform Improvements

Форматирование xcpretty задачи сборки XcodeXcode Build task xcpretty formatting

Теперь выходные данные сборки xcode можно форматировать с помощью xcpretty (рис. 25).You can now format your xcode build output with xcpretty (Figure 25). Кроме того, xcodebuild позволяет публиковать результаты теста JUnit в Team Services.You can also publish JUnit test results to Team Services with xcodebuild. Раньше в качестве средства сборки для публикации результатов тестов нужно было применять xctool.Previously, xctool had to be used as the build tool to publish test results. Сейчас чтобы включить xcpretty, установите флажок Использовать xcpretty и снимите флажок Использовать xctool в разделе Дополнительно задачи Xcode.Now, to enable xcpretty, check Use xcpretty and uncheck Use xctool in the Advanced section of the Xcode task.

Xcode Build formatting

Рис. 25. Форматирование xcpretty
Xcode Build formatting
(Figure 25) Xcpretty formatting

Публикация результатов теста Jenkins и покрытия кодаPublish Jenkins test and code coverage results

Задача сборки и выпуска Задание в очереди Jenkins теперь может получать результаты теста и покрытия кода из задания Jenkins или конвейера.The Jenkins Queue Job build and release task can now retrieve test and code coverage results from a Jenkins job or pipeline. Для этого требуется установить подключаемый модуль TFS для Jenkins 5.2.0 или более поздней версии на сервере Jenkins и настроить действие Сбор результатов для TFS и Team Services, выполняемое после сборки.This requires installation of the TFS Plugin for Jenkins 5.2.0 or later on your Jenkins server and configuring the post-build action Collect Results for TFS/Team Services. Результаты, полученные из Jenkins, можно опубликовать с помощью задач сборки Публиковать результаты теста или Публиковать покрытие кода.After results are retrieved from Jenkins, they can be published with the Publish Test Results or Publish Code Coverage build tasks.

Подписывание и экспорт Xcode 8 в задаче сборки XcodeXcode 8 signing and exporting packages in the Xcode Build Task

Теперь задача Xcode поддерживает сборку ваших проектов с использованием автоматического подписывания Xcode 8 (рис. 26).The Xcode task now supports building your projects using Xcode 8 automatic signing (Figure 26). Вы можете вручную установить сертификаты и профили подготовки на сервере сборки или запустить задачу по их установке, указав параметры Содержимое файла.You can install the certs and provisioning profiles on the build server manually, or have the task install them by specifying the File Contents options.

Xcode automatic signing

Рис. 26. Автоматическое подписывание Xcode
Xcode automatic signing
(Figure 26) Xcode automatic signing

При экспорте пакета приложения (IPA) из архива (.xcarchive) Xcode 8 требует указать файл параметров (.plist) экспорта (рис. 27).Xcode 8 requires specifying an export options plist (Figure 27) when exporting an app package (IPA) from an archive (.xcarchive). Если используется Xcode 8 или Xcode 7, задача Xcode автоматически определит метод экспорта.The Xcode task now automatically identifies the export method if you are using Xcode 8 or Xcode 7. Можно указать метод экспорта или указать пользовательский файл PSLIST из задачи Xcode.You can specify the export method or specify a custom plist file from the Xcode task. При использовании версии Xcode, предшествующей Xcode 7, задача пытается использовать для создания пакета приложения старое средство (xcrun).If you are using an Xcode version older than Xcode 7, the task falls back to using the old tool (xcrun) for creating the app package.

Xcode export options

Рис. 27. Параметры экспорта Xcode
Xcode export options
(Figure 27) Xcode export options

Усовершенствования тестов Test Improvements

Запуск тестов, созданных в Visual Studio 2017 Run tests built using Visual Studio 2017

Задачи Развертывание агента тестирования и Запуск функциональных тестов в процессе непрерывной интеграции и развертывания (рис. 28) теперь позволяют установить агенты тестирования для Visual Studio 2017 и запускать созданные с помощью Visual Studio 2017 тесты.Using the Deploy Test Agent and Run Functional Tests tasks in CI/CD pipeline (Figure 28), you can now install Test Agents for Visual Studio 2017 and run tests that were built using Visual Studio 2017.

Run tests

Рис. 28. Запуск тестов
Run tests
(Figure 28) Run tests

Проверка ошибок из рабочего элементаVerify bugs from work item

Теперь вы можете проверить ошибку, повторно запустив тесты, в которых она была выявлена (рис. 29).You can now verify a bug by re-running the tests which identified the bug (Figure 29). Параметр Проверить находится в рабочем элементе ошибки в контекстном меню и используется для запуска соответствующего тестового случая в средстве Web Runner.You can invoke the Verify option from the bug work item form context menu to launch the relevant test case in the web runner. В веб-средстве выполнения можно выполнить нужную вам проверку и непосредственно изменить рабочий элемент с ошибкой.Perform your validation using the web runner, and update the bug work item directly within the web runner.

Verify bugs from work item

Рис. 29. Проверка ошибок из рабочего элемента
Verify bugs from work item
(Figure 29) Verify bugs from work item

Вспомогательные методы клиента REST для шагов тестаREST client helpers for Test Step operations

Теперь вы сможете создавать, изменять и удалять шаги теста (и их вложения) в рабочих элементах тестового случая. Для этого воспользуйтесь вспомогательными классами, которые мы добавили в клиент REST (см. RestApi-Sample).You will now be able to create, modify, and delete test steps and test step attachments in Test Case work items using the helper classes we have added to the REST client (see the RestApi-Sample).

Обновление существующих ошибок из Web RunnerUpdate existing bugs from Web Runner

Веб-средство выполнения теперь позволяет не только создавать новые ошибки, но и обновлять сведения об уже существующих (рис. 30).In addition to creating new bugs from the Web runner, now you can also update an existing bug (Figure 30). В существующую ошибку автоматически добавляются все собранные диагностические данные, шаги для воспроизведения и ссылки для отслеживания из текущего сеанса.All the diagnostic data collected, repro steps, and links for traceability from the current session are automatically added to the existing bug.

Test runner

Рис. 30. Обновление существующей ошибки
Test runner
(Figure 30) Update existing bug

Описание тестового случая в Web RunnerTest case description in Web Runner

Поле описания тестового случая часто использовалось для записи необходимых условий перед запуском тестового случая.The test case description field was often used for capturing the prerequisites required before the test case execution can start. В текущем обновлении вы можете просмотреть описание тестового случая в веб-средстве выполнения, выбрав Показать описание (рис. 31).With this update, you are now be able to view the test case description information in the Web runner by using the Show description option (Figure 31).

Test case description

Рис. 31. Описание тестового случая
Test case description
(Figure 31) Test case description

Точка добавления: вкладка "Тест"Test hub contribution point

На страницу План тестирования была добавлена новая точка вклада ("ms.vss-test-web.test-plan-pivot-tabs") (рис. 32). Она позволяет разработчикам писать расширения в виде сводной вкладки, отображаемой рядом с вкладками Тесты и Диаграммы.We have added a new contribution point (“ms.vss-test-web.test-plan-pivot-tabs”) (Figure 32) within the Test plan hub to allow developers to write extensions as a pivot tab that appears next to the Tests and Charts tab.

Contribution point

Рис. 32. Точка добавления
Contribution point
(Figure 32) Contribution point

Удаление артефактов тестаDelete test artifacts

В предыдущих выпусках удалять можно было только рабочие элементы.Prior to this release, your delete option was limited to work items. В рамках этого обновления вы можете полностью удалять артефакты теста: планы тестирования, наборы тестов, тестовые случаи, общие параметры и общие шаги. Это можно делать как в центре Тест, так и в центре Работа. Для этого нужно выбрать команду Удалить окончательно (рис. 33) в контекстном меню рабочего элемента.With this update, you now have the ability to permanently delete test artifacts—test plans, test suites, test cases, shared parameters, and shared steps—both from the Test hub and the Work hub, by using the Permanently delete (Figure 33) option in the work item form context menu.

Delete test artifacts

Рис. 33. Удаление артефактов теста
Delete test artifacts
(Figure 33) Delete test artifacts

Избранное для планов тестированияFavorites for Test Plans

Теперь часто используемые планы тестирования можно включить в список "Избранное".You can now favorite the Test Plans you work with most frequently. В средстве, где выбираются Планы тестирования, вы сможете просматривать свои планы на вкладках Все или Избранное (рис. 34).In the Test Plans picker, you will see tabs for All your Test Plans and Favorites (Figure 34). Щелкните значок звездочки, чтобы добавить план тестирования в список "Избранное".Click the star icon to add a Test Plan to your list of favorites. Избранные планы тестирования, доступны в соответствующем средстве выбора и на вкладке Избранное на новой домашней странице учетной записи.The favorited Test Plans are accessible in the Test Plans picker and from the Favorites tab in the new account home page. Вы также можете отфильтровать планы тестирования, воспользовавшись поиском в поле заголовка (рис. 35).You can also filter Test Plans by searching on the title field (Figure 35).

Test plans

Рис. 34. Планы тестирования
Test plans
(Figure 34) Test plans

Test favorites

Рис. 35. Избранные планы тестирования
Test favorites
(Figure 35) Test favorites

Анализ влияния на тесты для управляемых автоматических тестовTest Impact Analysis for managed automated tests

Теперь в задаче VSTest версии 2.* (предварительная версия) доступен флажок анализа влияния на тесты для управляемых автоматических тестов (рис. 36).Test Impact Analysis for managed automated tests is now available via a checkbox in the Version 2.* (preview) version of the VSTest task (Figure 36).

Test impact analysis

Рис. 36. Анализ влияния на тесты
Test impact analysis
(Figure 36) Test impact analysis

Если функция включена, будет запущен только тот набор управляемых автоматических тестов, который необходим для проверки заданного изменения кода.If enabled, only the relevant set of managed automated tests needed to validate a given code change, will run. Для работы функции анализа влияния на тесты требуется последняя версия Visual Studio. Сейчас эта возможность поддерживается в CI для управляемых автоматических тестов.Test Impact Analysis requires the latest version of Visual Studio, and is presently supported in CI for managed automated tests.

Поддержка Firefox для расширения Test & FeedbackFirefox support for Test & Feedback extension

Мы рады объявить о широкой доступности расширения Test & Feedback для Firefox.We are happy to announce the General Availability of the Test & Feedback extension for Firefox. Надстройку для Firefox можно скачать на сайте marketplace.You can download the Firefox add-on from our marketplace site.

Примечание. Идет работа над поддержкой браузера Edge — следите за обновлениями.Note: Support for the Edge browser is also in the works; stay tuned for more updates.

Усовершенствования управления выпусками Release Management Improvements

Поддержка групп переменных в выпуске Variable groups support in Release

Группы переменных используются для объединения переменных и их значений, чтобы предоставить их в нескольких определениях выпуска.Variable groups are used to group your variables and their values to make them available across multiple release definitions. Вы также можете управлять безопасностью групп переменных и выбрать, кто сможет просматривать, изменять и использовать переменные в определениях выпуска.You can also manage security for variable groups and chose who can view, edit, and consume the variables from the variable groups in your release definitions.

Откройте вкладку Библиотека в центре Сборка и выпуск и выберите + Группа переменных на панели инструментов (рис. 37).Open the Library tab in the Build & Release hub and choose + Variable group in the toolbar (Figure 37). Сейчас группы переменных можно использовать только в определениях выпуска.Currently, variable groups can be consumed only in release definitions. Дополнительные сведения о группах переменных см. в статье Определения выпуска в Microsoft Release Management.Find more information about variable groups, Release definitions in Microsoft Release Management.

Создайте (рис. 37), а затем отредактируйте (рис. 38) группу переменных:Create (Figure 37), then edit (Figure 38) a variable group, as shown below:

Create variable group

Рис. 37. Создание группы переменных
Create variable group
(Figure 37) Create variable group

Edit variable group

Рис. 38. Изменение группы переменных
Edit variable group
(Figure 38) Edit variable group

Несколько расписаний в выпускахMultiple schedules in releases

Хотите запланировать создание выпусков несколько раз в день?Want to schedule your releases to be created more than once a day? Теперь в определении выпуска можно настроить несколько запланированных триггеров (рис. 39).You can now configure multiple scheduled triggers in a release definition (Figure 39).

Release schedule

Рис. 39. Расписание выпуска
Release schedule
(Figure 39) Release schedule

Встроенные подключения к службам в сборке и выпускеInline service connections in Build and Release

С помощью этой функции можно создавать подключения к службам непосредственно в определении сборки и выпуска, не переходя на вкладку Службы. Она будет автоматически включена для всех декларативно определенных расширений, таких как Docker, Jenkins, VMWare и SCVMM.With this feature, you can create service connections right in the build/release definition without navigating to the Services tab. This will be auto-enabled for all extensions which are defined declaratively, such as Docker, Jenkins, VMWare, and SCVMM.

До настоящего момента определения выпуска могли связывать источники артефактов только из текущего проекта.Until now, release definitions could only link artifact sources from the current project. Теперь можно связывать артефакты сборки (рис. 40) из другого проекта.Now, you can link build artifacts (Figure 40) from another project as well. При связывании артефакта в раскрывающемся списке проекта будут перечислены все проекты в учетной записи.While linking an artifact, the project drop down will list all the projects in the account.

Link build artifacts

Рис. 40. Связь артефактов сборки
Link build artifacts
(Figure 40) Link build artifacts

Улучшения группы ресурсов AzureAzure resource group improvements

В предыдущих выпусках задача группы ресурсов Azure не могла проверить синтаксис шаблона ARM, либо шаблон принимался, но развертывания ресурсов фактически не происходило.Prior to this release, the Azure resource group task could not validate the ARM template syntax, or it would be accepted without actually deploying the resources. В новом выпуске вы можете использовать новый режим развертывания Validation Only (Только проверка). Он позволяет вам выявлять проблемы с созданием шаблона до фактического создания ресурсов Azure.This enhancement allows a new deployment mode called Validation Only, where you can find problems with the template authoring before creating actual Azure resources.

Другим усовершенствованием задачи группы ресурсов Azure является возможность выбора между инкрементным или полным развертыванием (рис. 41).Another enhancement to the Azure resource group task is to allow either incremental, or complete deployments (Figure 41). В прошлом задача развертывала шаблоны ARM в инкрементном режиме.Previously, the task deployed the ARM templates using the Incremental mode. Но она не изменяла имевшиеся в группе ресурсы, которые не были указаны в шаблоне.However, it did not modify resources that existed in the resource group not specified in the template. Полный режим удаляет ресурсы, которые отсутствуют в шаблоне.Complete mode deletes resources that are not in your template. По умолчанию используется инкрементный режим.The default is incremental mode.

Azure resource groups

Рис. 41. Группы ресурсов Azure
Azure resource groups
(Figure 41) Azure resource groups

Задача Azure CLIAzure CLI task

Новая задача Azure CLI (рис. 42) поддерживает выполнение команд Azure CLI на кроссплатформенных агентах, таких как Windows, Linux и Mac.The new Azure CLI task (Figure 42) supports running Azure CLI commands on cross platform agents like Windows, Linux, and Mac. Задача поддерживает классические подписки и подписки ARM.The task supports both Classic and ARM subscriptions. Она поддерживает два режима предоставления скриптов: один как связанный артефакт, а другой — как встроенный скрипт.It supports two modes of providing the script, one as a linked artifact and another as an inline script.

Azure CLI task

Рис. 42. Задача Azure CLI
Azure CLI task
(Figure 42) Azure CLI task

Обновление службы поиска кода Code Search Update

В TFS 2017 с обновлением 1 в службу поиска кода входит Elasticsearch версии 2.4.1.In TFS 2017 Update 1, the Code Search service includes Elasticsearch version 2.4.1. Если служба поиска кода настроена на сервере TFS 2017, она будет обновлена в процессе обновления TFS.If the Code Search service is configured on a server running TFS 2017, the Code Search service will be updated as part of the TFS upgrade. Если служба поиска кода настроена на удаленном сервере, скопируйте содержимое Пакета службы поиска, предоставленного с установщиком, на удаленный компьютер и следуйте инструкциям в файле сведений по обновлению службы поиска вручную.If the Code Search service is configured on a remote server, then copy the content of the Search Service Package provided with the installer to the remote machine and follow the instructions in the readme file to upgrade the search service manually.

Улучшение анализа кода Code Insights Improvements

Задачи SonarQube для MSBuildSonarQube MSBuild tasks

Теперь задачи SonarQube для MSBuild доступны из предоставляемого SonarSource расширения.SonarQube MSBuild tasks are now available from an extension provided by SonarSource. Дополнительные сведения см. в статье SonarSource have announced their own SonarQube Team Services / TFS integration.For more details, please read SonarSource have announced their own SonarQube Team Services / TFS integration.

Улучшения администрирования Administration Improvements

Новые возможности настройки уведомленийNew notification settings experience

Уведомления помогают вам и вашим командам быть в курсе всех работ по проектам Team Services.Notifications help you and your teams stay informed about activity in your Team Services projects. Это обновление упрощает управление получаемыми уведомлениями.With this update, it’s now easier to manage what notifications you and your teams receive.

Теперь в меню профиля вам доступны собственные функции управления уведомлениями на уровне учетной записи (рис. 43).You now have your own account-level experience in the profile menu for managing your notifications setting (Figure 43).

Notification settings

Рис. 43. Параметры уведомлений
Notification settings
(Figure 43) Notification settings

В этом представлении вы можете управлять созданными личными подписками (рис. 44).This view lets you manage personal subscriptions you create (Figure 44). Здесь также отображаются подписки, созданные администраторами команд для всех проектов в учетной записи.It also shows subscriptions created by team administrators for all projects in the account.

Manage personal subscriptions

Рис. 44. Управление личными подписками
Manage personal subscriptions
(Figure 44) Manage personal subscriptions

Узнайте больше об управлении параметрами личных уведомлений.Learn more about managing personal notification settings.

addProjectReports теперь находится в TfsConfig.addProjectReports is now in TfsConfig

Теперь вы можете использовать команду addProjectReports для добавления отчетов в командные проекты.You can now use the command addProjectReports to add reports to your team projects. Ранее это была команда Power Tool, а теперь она является частью команды TfsConfig.exe.This was a previous Power Tool command and is now part of the TfsConfig.exe command. Подробнее см. в разделе Загрузка отчетов в командный проект.For more information, see Upload reports to a team project.

Недопустимость использования комнаты команды Team Room Deprecation

Так как сейчас доступен целый ряд эффективных решений, поддерживающих интеграцию с Team Foundation Server и Team Services, таких как Slack и Microsoft Teams, мы решили отказаться в Team Foundation Server и Team Services от функции "Комната команды".With so many good solutions available that integrate well with TFS and Team Services, such as Slack and Microsoft Teams, we made a decision to deprecate our Team Room feature from both TFS and Team Services. При работе в Team Services вы увидите новый желтый баннер, информирующий о нашем плане.If you are working in Team Services, you will see a new yellow banner appear that communicates our plan. В этом году мы планируем полностью отключить комнату команды.Later this year, we plan to turn off the Team Room feature completely.

Вам будет доступно несколько альтернативных решений.There are several alternatives you can use. Комната команды используется в центре уведомлений и в чате.The Team room is used both for a notification hub as well as for chat. TFS и Team Services уже взаимодействуют со многими другими продуктами для совместной работы, включая Microsoft Teams, Slack, HipChat, Campfire и Flowdock.TFS and Team Services already integrate with many other collaboration products including Microsoft Teams, Slack, HipChat, Campfire, and Flowdock. Можно также использовать Zapier для создания собственных связанных средств или получения очень четкого контроля над получаемыми уведомлениями.You can also use Zapier to create your own integrations, or get very granular control over the notifications that show up.

Дополнительные сведения об устаревании комнат команд в Team Services см. в этой статье.See more about the deprecation of Team Rooms in Team Services.

Форматирование Markdown больше не поддерживает ссылки на файлы Markdown no longer supports file links

Начиная с обновления 1 на страницах приветствия в мини-приложении Markdown на панелях мониторинга команд и в определениях готовности на канбан-досках больше не поддерживаются ссылки на файлы в разметке Markdown.With Update 1, welcome pages, the markdown widget on team dashboards, and the Definition of Done on the Kanban boards will no longer support file links in their Markdown. Обойти это ограничение можно, включив ссылку на файл в виде текста в Markdown.As a workaround, you can include your file link as text in the Markdown. Дополнительные сведения см. в статье Markdown guidance (Руководство по Markdown).For more information, see Markdown guidance.

Объявление о редакторе шаблонов процессов Announcing the Process Template Editor

Мы выпустили расширение Редактор шаблонов процессов для Visual Studio 2017.We have released the Process Template Editor extension for Visual Studio 2017. Это расширение предоставляет удобный способ просмотра и обновления шаблонов процессов, а также инструменты для обновления глобальных списков и рабочих элементов и просмотра атрибутов полей рабочих элементов.This extension provides a convenient method for viewing and updating process templates, as well as tools for updating global lists and work item types, and viewing the attributes of work item fields. Оно доступно для серверов TFS 2017 и TFS 2017 с обновлением 1.This works against TFS 2017 and TFS 2017 Update 1 servers.


Известные проблемы Known Issues

Сборка не работает при обновлении до TFS 2017 с обновлением 1 (сборка 15.112.26301.0) из TFS 2013 или более ранней версии.Build doesn't work when upgrading to TFS 2017 Update 1 build 15.112.26301.0 from TFS 2013 or earlier

  • Проблема.Issue:

    Обратите внимание, что эта проблема возникает только при обновлении до TFS 2017 с обновлением 1 (сборка 15.112.26301.0), которое было выпущено 7 марта 2017 года.Note that this issue only occurs if you upgraded to TFS 2017 Update 1 build 15.112.26301.0, released on 7 March, 2017. При обновлении до сборки 15.112.26307.0, выпущенной 9 марта, этой проблемы не возникает.If you upgraded to build 15.112.26307.0, released on 9 March, you will not encounter this.

    После обновления с TFS 2013 (RTM или любого обновления) или более ранней версии в сборке отображается ошибка "Счетчик с именем TaskReferenceId не существует".After upgrading from TFS 2013 (RTM or any update) or earlier, Build shows an error of "counter with name TaskReferenceId does not exist".

  • РешениеWorkaround:

    Запустите следующий сценарий для обновленной коллекции базы данных:Run the following script on your upgraded collection databases:

    INSERT  tbl_Counter (PartitionId, DataspaceId, CounterName, CounterValue)
    SELECT  DISTINCT
              dpm.PartitionId,
              ds.DataspaceId,
              N'TaskReferenceId',
              1
      FROM    tbl_DatabasePartitionMap dpm
      INNER LOOP JOIN Task.tbl_Hub h
      ON      h.PartitionId = dpm.PartitionId
      INNER LOOP JOIN tbl_Dataspace ds
      ON      ds.PartitionId = dpm.PartitionId
              AND ds.DataspaceCategory = h.DataspaceCategory
              AND ds.DataspaceIdentifier <> '00000000-0000-0000-0000-000000000000'
      WHERE   dpm.PartitionId > 0
              AND dpm.HostType = 4
              AND NOT EXISTS (
                  SELECT  *
                  FROM    tbl_Counter c
                  WHERE   c.PartitionId = dpm.PartitionId
                          AND c.DataspaceId = ds.DataspaceId
                          AND c.CounterName = N'TaskReferenceId'
              ) 
    

Клиенты должны обновить версию LFS Git до 1.3.1 или более поздней версииCustomers should update to Git LFS version 1.3.1 or higher

  • Проблема.Issue:

    Версии LFS Git до 1.3.1 больше не поддерживаются.Git LFS versions before 1.3.1 are no longer supported.

  • РешениеWorkaround:

    Если вы используете Git LFS, обновите Git LFS до 1.3.1 или более поздней версии.If you are using Git LFS, you must update to Git LFS version 1.3.1 or higher. Более старые версии клиента LFS не совместимы с изменениями в аутентификации в этой версии TFS.Older versions of the LFS client are not compatible with authentication changes in this version of TFS.

Формы рабочих элементов отображаются неправильноWork item forms do not render correctly

  • Проблема.Issue:

    Если в формах рабочих элементов используется устаревший пользовательский элемент управления, такой как устаревший элемент управления с несколькими значениями, они могут отображаться неправильно.If you use a legacy custom control in your work item forms, such as the legacy multi-value control, your work item forms may fail to render.

  • РешениеWorkaround:

    Потребуется выполнить обновление до последней версии элемента управления.You will need to update to the latest version of your control. Последнюю версию элемента управления с несколькими значениями для TFS 2017 с обновлением 1 можно найти здесь.You can find the latest multi-value control for TFS 2017 Update 1 here.

Формы рабочих элементов отображаются в веб-клиенте неправильно.Work item forms do not render correctly in the web

  • Проблема.Issue:

    Если у вас есть пользовательский элемент управления, например элемент управления с несколькими значениями, установленный для клиента Visual Studio, но не для веб-клиента, формы рабочих элементов в веб-клиенте не будут отображаться.If you have a custom control, such as the multi-value control, installed for the Visual Studio client but not the web client, work item forms in the web fail to render.

  • РешениеWorkaround:

    Вы можете добавить веб-макет, который не содержит неотображаемый элемент управления.You can add a web layout that doesn’t contain the missing control element. Вы можете создать разные макеты, предназначенные для Visual Studio и веб-клиента.You can have different layout targeting visual studio and web. Дополнительные сведения о макете: https://www.visualstudio.com/docs/work/reference/all-form-xml-elements-reference#attributes-that-are-used-to-format-form-elements.For more info on the layout https://www.visualstudio.com/docs/work/reference/all-form-xml-elements-reference#attributes-that-are-used-to-format-form-elements.

Формы рабочих элементов не скрывают поля только для чтения.Work item forms do not hide read only fields

  • Проблема.Issue:

    Если вы используете старую форму рабочих элементов со свойством HideReadonlyEmptyFields, имеющим значение True в макете, в форме не будут скрываться поля только для чтения и пустые поля.If you use old workitem form with HideReadonlyEmptyFields property set to true in the layout, your form will fail to hide read only and empty fields.

  • РешениеWorkaround:

    Сейчас для этой проблемы не существует обходного решения.There is no workaround at this time. Эта проблема будет устранена в TFS 2017 с обновлением 2.This will be fixed in TFS 2017 Update 2.

Формы рабочих элементов отображаются при просмотре как "грязные"Work item forms become dirty on viewing

  • Проблема.Issue:

    Эта проблема характерна для IE 11 в TFS 2017 с обновлением 1 при выборе новой формы рабочего элемента.This issue is specific to IE 11 on TFS 2017 Update 1 when opting into the new work item form. Если в вашем профиле заданы французский, корейский, русский, турецкий, японский или китайский языки и рабочий элемент назначен любому идентификатору, при просмотре рабочего элемента вы увидите форму рабочего элемента как "грязную".If you have your profile set to French, Korean, Russian, Turkish, Japanese, or Chinese, and the work item is assigned to any identity, you will see the work item form as dirty when viewing the work item. Когда вы сохраняете рабочий элемент, в поле "Кому назначено" будет указано значение "Не назначено".If you save the work item, the Assigned To field will be set to unassigned.

  • РешениеWorkaround:

    Используйте другой браузер помимо IE11.Use another browser besides IE11. Если вы используете IE11, нажмите кнопку отмены или обновления на панели инструментов рабочего элемента, чтобы восстановить правильное значение в поле "Назначено".If you are using IE11, click undo/refresh from the work item toolbar to restore the correct Assigned To value.

Сбой кэшрования вышестоящих пакетов NPMCaching of upstream NPM packages fail

  • Проблема.Issue:

    Если сервер TFS находится за прокси-сервером, кэширование вышестоящих пакетов NPM завершится ошибкой.If your TFS server is behind a proxy, the caching of upstream NPM packages will fail.

  • РешениеWorkaround:

    Если сервер TFS находится за корпоративным прокси-сервером, внесите следующие изменения в файлаweb.config сервера TFS (т. е. %ProgramFiles%\Microsoft Team Foundation Server 15.0\Application Tier\Web Services\web.config).If your TFS server is behind a corporate proxy, make the following changes to your TFS server web.config (i.e. %ProgramFiles%\Microsoft Team Foundation Server 15.0\Application Tier\Web Services\web.config).

    Замените этот блок конфигурации:Replace this configuration block:

      <!-- ASP.NET Proxy Usage for HttpWebRequests 
            "usesystemdefault" 
               false - stops the server using the default proxy configuration or proxy
                     auto-detection. 
            "bypassonlocal"
               true - this tells all requests to a local address to ignore configured proxies.
        -->
      <defaultProxy>
        <proxy usesystemdefault="False" bypassonlocal="True" />
      </defaultProxy>
    

    На следующий код:With this:

      <defaultProxy useDefaultCredentials="true" />
    

Раскрывающееся меню "Код" отображает неправильные страницы управления версиями.Code dropdown menu shows incorrect Version Control pages

  • Проблема.Issue:

    Если вы перейдете на страницу администрирования в репозитории Git, как показано на рисунке ниже (рис. 45), и щелкните центр Код, вы увидите ссылки Наборы изменений и Наборы отложенных изменений, вместо ссылки Журнал.If you navigate to the admin page on a git repository, as shown in the image below (Figure 45), and click on the Code hub, they will see the Changesets and Shelvesets links, instead of the History link.

    Code dropdown menu

    Рис. 45. Раскрывающееся меню "Код"
    Code dropdown menu
    (Figure 45) Code dropdown menu

  • РешениеWorkaround:

    Выйдите со страницы администрирования в репозитории git, и вы увидите правильные ссылки.Navigate out of the git repository admin page and you will see the correct links.

Расширения не обновляются автоматически.Extensions are not being auto-updated

  • Проблема.Issue:

    Если вы обновляете предыдущую версию TFS до TFS 2017 и работаете с TFS 2017 в подключенном режиме, расширения не обновляются автоматически, как это должно быть.If you upgrade a prior version of TFS to reach TFS 2017 and are running TFS 2017 in connected mode then your extensions will not be auto-updated as they should be.

  • РешениеWorkaround:

    Сейчас для этой проблемы не существует обходного решения.There is no workaround at this time. Эта проблема устранена. Возможность автоматического обновления будет доступна в TFS 2017 с обновлением 2.We have fixed the issue and the auto update behavior will reach you through TFS 2017 Update 2. Если по какой-либо причине вы не можете дождаться обновления 2, обратитесь к нам через канал поддержки, и мы предоставим вам исправление раньше.If for any reason you cannot wait for Update 2 then reach us through the Support channel and we shall share the fix earlier.

Если не задан правильный общедоступный URL-адрес, вы не сможете скачать расширения или они будут работать неправильно.Extensions cannot not be acquired or will not function correctly if Public URL is not set correctly

  • Проблема.Issue:

    Получение расширения из Visual Studio Marketplace завершается с ошибкой.Extension acquisition from Visual Studio Marketplace will fail.

    Уже полученные расширения, вероятно, не работают должным образом.Already acquired extensions are likely to not function as expected.

  • РешениеWorkaround:

    Проблема устранена в обновлении 2 для Team Foundation Server 2017. Рекомендуем установить его.This is fixed in TFS 2017 Update 2 and we recommend upgrading. Чтобы эта функция работала в обновлении 1, измените "Общедоступный URL-адрес" в консоли администратора Team Foundation Server на URL-адрес, доступный с другой системы в корпоративной среде (рис. 46).If you need this to work on Update 1, set the ‘Public URL’ in the TFS Server Administrator Console such that the URL is reachable from another system within your corporate environment (Figure 46).

Code menu

Рис. 46. Меню "Код"
Code menu
(Figure 46) Code menu