Team Foundation Server 2018 Update 2: Anmerkungen zu dieser Version Team Foundation Server 2018 Update 2 Release Notes


| Entwicklercommunity | Systemanforderungen und Kompatibilität | Lizenzbedingungen | TFS-DevOps-Blog | SHA-1-Hashes || Developer Community | System Requirements and Compatibility | License Terms | TFS DevOps Blog | SHA-1 Hashes |


Hinweis

Wenn Sie auf diese Seite über eine nicht englischen Sprachversion zugreifen und den neuesten Inhalt sehen möchten, besuchen Sie die englischsprachige Seite mit den Anmerkungen zu der Version.If you are accessing this page from a non-English language version, and want to see the most up-to-date content, please visit this Release Notes page in English. Sie können die Sprache auf dieser Seite ändern, indem Sie in der Seitenfußzeile auf das Globussymbol klicken und die gewünschte Sprache auswählen.You can change the language of this page by clicking the globe icon in the page footer and selecting your desired language.


In diesem Artikel erhalten Sie Informationen zu dem neuesten Release für Team Foundation Server 2018.In this article, you will find information regarding the newest release for Team Foundation Server 2018. Klicken Sie zum Herunterladen auf die Schaltfläche.Click the button to download.

Download the latest version of Team Foundation Server

Weitere Informationen zu Team Foundation Server 2018 finden Sie auf der Seite Team Foundation Server Requirements and Compatibility (Team Foundation Server: Anforderungen und Kompatibilität).To learn more about Team Foundation Server 2018, see the Team Foundation Server Requirements and Compatibility page. Besuchen Sie die Seite visualstudio.com/downloads, um andere TFS 2018-Produkte herunterzuladen.Visit the visualstudio.com/downloads page to download other TFS 2018 products.

Das direkte Upgrade auf Team Foundation Sever 2018 Update 2 ist nur ab TFS 2012 und höher möglich.Direct upgrade to Team Foundation Server 2018 Update 2 is supported from TFS 2012 and newer. Wenn Sie TFS 2010 oder früher verwenden, müssen Sie vor dem Upgrade auf TFS 2018 Update 2 noch mehrere Zwischenschritte ausführen.If your TFS deployment is on TFS 2010 or earlier, you need to perform some interim steps before upgrading to TFS 2018 Update 2. Weitere Informationen finden Sie im untenstehenden Diagramm und auf der Seite für die Installation von TFS.Please see the chart below and the TFS Install page for more information.

TFS Upgrade Matrix
TFS-UpgradematrixTFS Upgrade Matrix

Wichtig

Sie müssen kein Upgrade auf TFS 2018 RTM durchführen, bevor Sie auf TSF 2018 Update 2 upgraden.You do not need to upgrade to TFS 2018 RTM before upgrading to TFS 2018 Update 2.


Release Notes Icon Veröffentlichungsdatum: 7. Mai 2018Release Date: May 7, 2018

Sie können nun ein Upgrade auf TFS 2018 Update 2 durchführen und weiterhin eine Verbindung zu Ihren XAML-Controllern herstellen und XAML-Builds ausführen.You can now upgrade to TFS 2018 Update 2 and continue to connect your XAML controllers and run XAML builds. Als die Unterstützung für XAML-Builds in TFS 2018 RTW und Update 1 entfernt wurde, konnten einige Benutzer aufgrund von veralteten XAML-Builds kein Upgrade durchführen. Dieses Problem soll behoben werden.When we removed support for XAML build in TFS 2018 RTW and Update 1, some of you could not upgrade due to having legacy XAML builds, and we want to unblock you. Obwohl TFS 2018 Update 2 XAML-Builds für Ihre veralteten Builds unterstützt, sind XAML-Builds veraltet, und es wird nicht weiter in diese investiert. Deshalb wird die Konvertierung in ein neueres Format für Builddefinitionen empfohlen.Although TFS 2018 Update 2 supports XAML builds for your legacy builds, XAML build is deprecated and there will be no further investment, so we highly recommend converting to a newer build definition format.

Zusammenfassung: Neues in TFS 2018 Update 2Summary of What's New in TFS 2018 Update 2

Wir haben Team Foundation Server 2018 Update 2 viele neue Funktionen hinzugefügt.We have added a lot of new value to Team Foundation Server 2018 Update 2. Einige der Highlights sind unter anderem:Some of the highlights include:


Ausführlicher Überblick: Neues in TFS 2018 Update 2Details of What's New in TFS 2018 Update 2

Weitere Informationen zu diesen Features finden Sie in den entsprechenden Abschnitten:You can find details about features in each area:

CodeCode

In der Dateiansicht sehen Sie normalerweise die Version an der Spitze des jeweiligen Branchs.When viewing a file, you usually see the version at the tip of the selected branch. Diese Dateiversion kann sich durch neue Commits ändern.The version of a file at the tip may change with new commits. Wenn Sie einen Link aus dieser Ansicht kopieren, kann es sein, dass dieser irgendwann nicht mehr gültig ist, da die URL nur den Namen des Branchs und nicht den Commit-SHA enthält.If you copy a link from this view, your links can become stale because the URL only includes the branch name, not the commit SHA. Jetzt können Sie mühelos die Dateiansicht wechseln, um die URL zu aktualisieren, sodass sie auf den Commit und nicht mehr auf den Branch verweist.You can now easily switch the Files view to update the URL to refer to the commit rather than the branch. Wenn Sie die Y-Taste drücken, wechselt Ihre Ansicht zum Commit an der Spitze des aktuellen Branches.If you press the "y" key, your view switches to the tip commit of the current branch. Dann können Sie permanente Links kopieren.You can then copy permanent links.

Wiederherstellen eines kürzlich gelöschten Repositorys über die APIRecover a recently-deleted repository through API

Manchmal kommt es zu versehentlichen Löschungen beim Bereinigen alter Repositorys bei der Quellcodeverwaltung.Sometimes mistakes can be made when cleaning up old repositories in source control. Wenn ein Git-Repository in den letzten 30 Tagen gelöscht wurde, kann es über die REST-API wiederhergestellt werden.If a Git repository is deleted within the last 30 days, it can be recovered through the REST API. Weitere Informationen finden Sie in den Dokumentationen zu Auflistungs- und Wiederherstellungsvorgängen.See the documentation for the list and recover operations for more information.

SSH: Unterstützen zusätzlicher Verschlüsselungen/Schlüssel und Einstellen der Unterstützung veralteter VerschlüsselungenSSH: Support additional ciphers/keys and deprecate outdated ciphers

Die Liste der unterstützten SSH-Verschlüsselungen wurde aktualisiert, um die Sicherheit und die Kompatibilität zu verbessern.To improve security and compatibility, we have updated the list of ciphers supported for SSH. Es wurden zwei neue Verschlüsselungen hinzugefügt und drei als veraltet markiert, was der Entwicklung von OpenSSH entspricht.We have added two new ciphers and deprecated three, matching OpenSSH's direction. Die veralteten Verschlüsselungen funktionieren in diesem Release weiterhin.The deprecated ciphers continue to work in this release. Sie werden in einem kommenden Release entfernt, wenn sie nicht mehr verwendet werden.They will be removed in the future as usage falls off.

Hinzugefügt:Added:

  • AES128 CTRAES128 CTR
  • AES256 CTRAES256 CTR

Als veraltet gekennzeichnet:Deprecated:

  • AES128AES128
  • AES192AES192
  • AES256AES256

Vermeiden von Überschreibungen und Schützen der Leistung mit RepositoryeinstellungenAvoid overwrites and protect performance using repository settings

Mit diesem Update stehen zwei neue Repositoryeinstellungen zur Verfügung, die zum problemlosen Ausführen von Git beitragen.In this Update, you will find two new repository settings to help keep Git running smoothly.

Case enforcement (Groß-/Kleinschreibung erzwingen) ändert den Standardmodus des Servers, bei dem Groß- und Kleinschreibung beachtet wird („File.txt“ und „file.txt“ verweisen auf die gleiche Datei), in einen Windows- und macOS-freundlichen Modus, bei dem „File.txt“ und „file.txt“ dieselbe Datei sind.Case enforcement switches the server from its default case-sensitive mode, where "File.txt" and "file.txt" refer to the same file, to a Windows and macOS-friendly mode where "File.txt" and "file.txt" are the same file. Diese Einstellung gilt für Dateien, Ordner, Branches und Tags.This setting affects files, folders, branches, and tags. Außerdem wird dadurch verhindert, dass Mitwirkende versehentlich Unterschiede einführen, die nur auf die Groß- und Kleinschreibung bezogen sind.It also prevents contributors from accidentally introducing case-only differences. Es wird empfohlen, das Erzwingen der Groß- und Kleinschreibung zu aktivieren, wenn ein Großteil Ihrer Mitwirkenden mit Windows oder macOS arbeiten.Enabling case enforcement is recommended when most of your contributors are running Windows or macOS.

Mit Limit file sizes (Dateigrößen einschränken) können Sie verhindern, dass neue oder aktualisierte Dateien eine bestimmte von Ihnen festgelegte Dateigröße nicht überschreiten.Limit file sizes allows you to prevent new or updated files from exceeding a size limit you set. Je höher die Anzahl an großen Dateien im Verlauf eines Git-Repositorys ist, desto schlechter ist die Leistung beim Klonen und Fetchen.The greater number of large files that exist in a Git repository's history, the worse clone and fetch operation performance becomes. Durch diese Einstellung wird verhindert, dass versehentlich zu große Dateien hinzugefügt werden.This setting prevents accidental introduction of these files.

Erzwingen der Groß- und Kleinschreibungcase enforcement

Verbesserte Filterfunktion für Commits mit mehr als 1.000 geänderten DateienEnhanced filter capability for commits with more than 1000 files changed

Das Suchen nach einer Datei in Commits oder Pull Requests, in denen mehr als 1.000 Dateien geändert wurden, war bis jetzt ineffizient. Sie mussten mehrmals auf den Link Mehr laden klicken, um die für Sie relevante Datei zu finden.Searching for a file in commits or pull requests that have modified more than 1000 files was inefficient; you would need to click on Load more link several times to find the file that you were interested in. Wenn Sie jetzt in der Strukturansicht Inhalte filtern, wird die Suche dateiübergreifend im Commit durchgeführt. Früher wurden nur die oberen 1.000 geladenen Dateien durchsucht.Now, when you filter content in the tree view, the search for that file is done across all files in the commit instead of just looking at the top 1000 files loaded. Für Commits, die mehr als 1.000 geänderte Dateien enthalten, wurde die Leistung der Commitdetailseite verbessert.The performance of the commit details page is also improved when there are more than 1000 files modified.

Suchen von Commits, die aufgrund eines erzwungenen Pushvorgangs verloren wurdenFind lost commits due to a Force Push

Sie können „Git force push“ durchführen und einen Remoteverweis aktualisieren, auch wenn dieser kein Vorgänger des lokalen Verweises ist. Dadurch können Commits bei anderen Benutzern verloren gehen, und es kann sehr schwer sein, den Grund zu finden.You can perform a Git force push and update a remote ref even if it is not an ancestor of the local ref. This may cause others to lose commits and it can be very hard to identify the root cause. In der neuen Ansicht „Pushes“ haben wir erzwungene Pushes hervorgehoben, damit Probleme mit fehlenden Commits besser behoben werden können.In the new pushes view, we have made force pushes noticeable in order to help troubleshoot issues related to missing commits.

Push erzwingenforce push

Wenn Sie auf „Push erzwingen“ klicken, werden Sie zum entfernten Commit weitergeleitet.Clicking on the force push tag takes you to the removed commit.

Entfernte Commitsremoved commits

VerantwortungsverlaufBlame now has history

Die Ansicht Blame (Verantwortung) ist sehr praktisch, wenn Sie herausfinden möchten, wer die letzte Codezeile geändert hat.The Blame view is great for identifying the last person to change a line of code. Allerdings kann es manchmal notwendig sein, herauszufinden, wer die vorherigen Änderungen an einer Codezeile vorgenommen hat.However, sometimes you need to know who made the previous change to a line of code. Hier kommt Ihnen die neueste Verbesserung an „Verantwortung“ zugute: Verantwortung vor diesem Commit anzeigen.The newest improvement in blame can help - View blame prior to this commit. Wie der Name schon sagt, können Sie dadurch zur Version vor der Version zurückgehen, in der eine bestimmte Zeile geändert wurde, und sich die Informationen zur Verantwortung für diese Version ansehen.As the name suggests, this feature allows you to jump back in time to the version of the file prior to the version that changed a particular line, and view the blame info for that version. Sie können immer weiter nach hinten springen und sich jede Version der Datei ansehen, die vor der Änderung der ausgewählten Codezeile vorhanden war.You can continue to drill back in time looking at each version of the file that changed the selected line of code.

VerantwortungsverlaufBlame history

Umschalten des Zeilenumbruchs und von Leerräumen in VergleichsansichtenToggle word wrap and white space in diff views

In der Dateivergleichsansicht stehen zwei neue Features zur Verfügung: Zeilenumbruch umschalten und Leerzeichen umschalten.Two new features are available in the file diff viewer: Toggle Word Wrap and Toggle White Space. Mit dem ersten Feature können Sie die Zeilenumbruchseinstellung in einer Vergleichsansicht anwenden.The first allows the word wrap setting to be applied while in a diff view. Dies ist besonders beim Prüfen von PRs nützlich, die Dateien ohne regelmäßige Zeilenumbrüche enthalten (z.B. Markdown-Dateien).This is particularly useful for reviewing PRs that contain files without frequent line breaks - markdown files are a good example. Die Option zum Umschalten von Leerräumen ist hilfreich, wenn sich in einer Zeile oder in einer Datei nur Leerräume geändert haben.The option to toggle white space is helpful when only whitespace has changed in a line or file. Durch das Umschalten dieser Option werden in der Vergleichsansicht alle Leerräume angezeigt und hervorgehoben (Punkte für Leerzeichen, Pfeile für Tabstopps usw.).Toggling this setting displays and highlights the whitespace characters (dots for spaces, arrows for tabs, etc.) in the diff.

Klicken Sie auf das Zahnrad für die Editor-Einstellungen im Pull Request-Editor oder in der Vergleichsansicht, um diese Einstellungen zu verwalten.To manage these settings, click on the editor preferences gear in the pull request editor or diff view. Wählen Sie in der Dateiansicht die Option Benutzereinstellungen im Kontextmenü.In the Files view, select the User Preferences option on the right-click menu.

Editor, ZahnradEditor gear

Wählen Sie Editor-Features aus, z.B. Leerraum anzeigen und vergleichen, Zeilenumbruch aktivieren, Codefaltung aktivieren und Minikarte anzeigen.Select the various editor features including Show and diff white space, Enable word wrap, Enable code folding, and Show minimap.

Editor, EinstellungenEditor perfs

Die Codefaltung (auch als „Gliederung“ bezeichnet) wird auch für die Webansicht aktiviert.Code folding (called "outlining" in some editors) is also being enabled for the web view. Wenn die Codefaltung aktiviert ist, klicken Sie auf die Minuszeichen, um die Codeabschnitte zu reduzieren, und klicken Sie auf die Pluszeichen, um reduzierte Abschnitte zu erweitern.When code folding is enabled, click on the minus signs to collapse sections of code -- click on plus signs to expand collapsed sections. Wenn Sie F1 drücken, öffnet sich eine Optionsauswahl zum dateiübergreifenden Falten verschiedener Einrückgrade, sodass große Dateien leichter gelesen und geprüft werden können.The F1 command palette also exposes options for folding various indentation levels across an entire file, making it easier to read and review large files.

CodefaltungCode folding

Nachverfolgen von Codepushes an ein Git-Repository an Builds und ReleasesTrack code pushes to a Git repo to builds and releases

Sie können sich den Build- und Releasestatus von Mergecommits unter Pushes ansehen.Now you can view the build and release status of merge commits in the Pushes page. Wenn Sie auf den Status neben dem Push klicken, sehen Sie den Build oder das Release, in dem sich der Push befindet. Dort erkennen Sie, ob der Push erfolgreich war.By clicking the status next to the push, you will find the specific build or release that the push is included in so that you can verify success or investigate failure.

Pushes, CI-DC-StatusPushes ci-cd status

Gerendertes Markdown in E-Mail-BenachrichtigungenRendered markdown in email notifications

Markdown eignet sich hervorragend zum umfangreichen Hinzufügen von Formatierungen, Links und Bildern in den Beschreibungen und Kommentaren von PRs.Markdown is great for adding rich formatting, links, and images in pull request (PR) descriptions and comments. E-Mail-Benachrichtigungen für PRs zeigen jetzt gerendertes Markdown statt Rohinhalt an, sodass sie leicht lesbar sind.Email notifications for PRs now display the rendered markdown instead of the raw contents, which improves readability.

Inlinebilder werden noch nicht inline gerendert (sie werden nur als Links angezeigt), aber daran arbeiten wir aktuell.Inline images are not yet rendered inline (they are just shown as links), but we have that on our backlog to add in the future.

PR, BenachrichtigungsmarkdownPR notification markdown

Ausführen von TFVC-Befehlen über den Windows-ExplorerPerform TFVC commands right from Windows Explorer

Die TFVC-Windows-Shellerweiterung, die eine einfache, in den Windows-Datei-Explorer integrierte Versionskontrolle ermöglicht, unterstützt jetzt TFS 2018.The TFVC Windows Shell Extension, that gives a lightweight version control experience integrated into Windows File Explorer, now supports TFS 2018. Durch dieses Tool erhalten Sie direkt über das Windows-Explorer-Kontextmenü schnellen Zugriff auf viele TFVS-Befehle.This tool gives convenient access to many TFVC commands right in the Windows Explorer context menu.

Das Tool, das Teil von TFS Power Tools war, wurde als eigenständiges Tool auf dem Visual Studio Marketplace veröffentlicht.Formerly part of the TFS Power tools, the tool has been released as a standalone tool on the Visual Studio Marketplace.

ShellerweiterungShell extension

Festlegen, wer zu Pull Requests beitragen kannControl who can contribute to pull requests

Früher konnte jeder, der ein Git-Repository anzeigen konnte, auch dessen Pull Requests bearbeiten.Previously, anyone who could view a Git repository could work with its pull requests. Wir haben eine neue Berechtigung hinzugefügt: Zu Pull Requests beitragen. Diese steuert, wer Pull Requests bearbeiten und diese kommentieren kann.We have added a new permission called Contribute to pull requests that controls access to creating and commenting on pull requests. Alle Benutzer und Gruppen, die vorher Leseberechtigung hatten, erhalten standardmäßig auch diese Berechtigung.All users and groups that previously held the Read permission are also granted this new permission by default. Durch das Einführen dieser Berechtigung können Administratoren flexibler arbeiten und den Zugriff einschränken.The introduction of this new permission gives administrators additional flexibility and control. Wenn es erforderlich ist, dass die Gruppe Leser tatsächlich nur lesen darf, können Sie die Berechtigung Zu Pull Requests beitragen verweigern.If you require your Readers group to be truly read-only, you can deny the Contribute to pull requests permission.

Weitere Informationen finden Sie in der Schnellstart-Dokumentation zum Festlegen von Repositoryberechtigungen.See the quickstart documentation for setting repository permissions for more information.

Benachrichtigungen zu Pull Request-Kommentaren enthalten den ThreadkontextPull request comment notifications include the thread context

Häufig sind Antworten auf Pull Request-Kommentare recht kurz und informieren lediglich darüber, dass eine Änderung vorgenommen wurde oder werden soll.Many times, replies to pull request (PR) comments are pretty brief, acknowledging that a change will be or has been made. Dies ist beim Anzeigen der Kommentare in der Webansicht kein Problem. Wenn Sie jedoch einen Kommentar in einer E-Mail-Benachrichtigung lesen, geht der Kontext des ursprünglichen Kommentars verloren.This is not a problem when viewing these comments in the web view, but if you are reading a comment in an email notification, the context of the original comment is lost. Ein einfaches „I‘ll fix it“ (Ich kümmere mich darum) hat ohne Kontext keine Bedeutung.A simple "I'll fix it" has no meaning.

Wenn ein PR-Kommentar beantwortet wird, enthalten die E-Mails nun auch die vorherigen Antworten im Text der E-Mail.Now, whenever a reply is made to a PR comment, the comment emails include the prior replies in the body of the email message. Dadurch können alle am Thread Beteiligten direkt in ihrem Posteingang den gesamten Kontext des Kommentars sehen und müssen nicht extra die Webansicht öffnen.This allows the thread participants to see the full context of the comment right from their inbox - no need to open the web view.

PR, KommentarbenachrichtigungsthreadPR comment notifications thread

Einstellungen zum Abschließen von ArbeitselementenComplete work items settings

Das Feature zum Abschließen von Arbeitselementen beim Abschließen von PRs verfügt jetzt über eine neue Repositoryeinstellung zum Steuern des Standardverhaltens.The feature to complete work items when completing pull requests now has a new repository setting to control the default behavior. Die neue Einstellung Benutzereinstellungen zum Abschließen von Arbeitselementen mit Pull Requests speichern ist standardmäßig aktiviert und behält beim Abschließen weiterer Pull Requests im Repository den letzten Zustand des Benutzers bei.The new setting to Remember user preferences for completing work items with pull requests is enabled by default, and honors the user's last state when completing future pull requests in the repo. Wenn die neue Einstellung deaktiviert ist, ist Verknüpfte Arbeitsaufgaben nach dem Mergen abschließen standardmäßig für alle Pull Requests im Repository deaktiviert.If the new setting is disabled, then the Complete linked work items after merging option defaults to disabled for all pull requests in the repository. Benutzer können immer noch verknüpfte Arbeitselemente beim Abschließen von PRs verändern, aber dafür müssen sie sich aktiv entscheiden.Users can still choose to transition linked work items when completing PRs, but they will need to opt-in each time.

Erweiterbarkeit des Status von Pull RequestsPull request status extensibility

Das Verwenden von Branchrichtlinien ist eine gute Möglichkeit, um die Qualität Ihres Codes zu verbessern.Using branch policies can be a great way to increase the quality of your code. Diese Richtlinien sind jedoch begrenzt auf die Integrationen, die nativ von TFS bereitgestellt werden.However, those policies have been limited to only the integrations provided natively by TFS. Durch das Verwenden der neuen Status-API für Pull Requests und der entsprechenden Branchrichtlinie können Dienste von Drittanbietern genauso am Pull Request-Workflow teilnehmen wie native TFS-Features.Using the new pull request Status API and the corresponding branch policy, third party services can participate in the pull request workflow just like native TFS features.

Wenn ein Dienst einen Pull Request in der Status-API veröffentlicht, erscheint dieser sofort in der Ansicht PR details (PR-Details) im neuen Abschnitt Status.When a service posts to the Status API for a pull request, it immediately appears in the PR details view in a new Status section. Der Abschnitt „Status“ zeigt die Beschreibung an und erstellt einen Link zu der URL, die vom Dienst bereitgestellt wurde.The status section shows the description and creates a link to the URL provided by the service. Statuseinträge unterstützen ebenfalls ein Aktionsmenü (...), das erweiterbar ist, um neue Aktionen durch Weberweiterungen hinzuzufügen.Status entries also support an action menu (...) that is extensible for new actions added by web extensions.

Statusbereichstatus section

Der Status allein blockiert den Abschluss eines Pull Requests nicht. Hier kommt die Richtlinie ins Spiel.Status alone does not block completion of a PR - that is where the policy comes in. Sobald der PR-Status veröffentlicht wurde, kann eine Richtlinie konfiguriert werden.Once PR status has been posted, a policy can then be configured. Es ist eine neue Branchrichtlinie verfügbar, um Genehmigung von externen Diensten anzufordern.From the branch policies experience, a new policy is available to Require approval from external services. Klicken Sie auf +Add service (+ Dienst hinzufügen), um den Vorgang zu starten.Select + Add service to begin the process.

Statusrichtlinie hinzufügenstatus policy add

Klicken Sie im Dialogfeld auf den Dienst in der Liste, der den Status veröffentlicht, und wählen Sie die gewünschten Richtlinienoptionen aus.In the dialog, select the service that is posting the status from the list and select the desired policy options.

Statusrichtliniendialogfeldstatus policy dialog

Sobald die Richtlinie aktiv ist, wird der Status im Abschnitt Policies (Richtlinien) und gegebenenfalls unter Required (Erforderlich) oder Optional angezeigt und der Abschluss des PR wird gegebenenfalls erzwungen.Once the policy is active, the status is shown in the Policies section, under Required or Optional as appropriate, and the PR completion is enforced as appropriate.

Weitere Informationen zur Status-API und Möglichkeiten, diese selbst zu testen, finden Sie in der documentation (Dokumentation und in den samples (Beispielen).To learn more about the status API, and to try it out for yourself, check out the documentation and samples.

Mergeereignisse für Pull Request-Service HooksPull request service hooks merge events

Erweiterungen, in denen Pull Request-Service Hooks eingesetzt werden, verfügen nun über weitere Details und Filteroptionen für Mergeereignisse.Extensions using pull request service hooks now have more details and filtering options for merge events. Jedes Mal, wenn ein Merge durchgeführt wird, wird das Ereignis unabhängig davon ausgelöst, ob der Merge erfolgreich war oder nicht.Any time a merge is attempted, the event is fired regardless of the success or failure of the merge. Wenn bei einem Mergeversuch ein Fehler auftritt, werden Angaben zu den Gründen des Fehlers gemacht.When a merge attempt results in a failure, details about the reason for the failure is included.

Mergeereignisse für PR-Service HooksPR service hooks merge events

Verbesserte Fehlermeldungen für Arbeitselemente, die mit einem PR abgeschlossen werdenImproved error messages for work items completing with a pull request

Wenn Sie Arbeitselemente mit einem Pull Request abschließen möchten, kann es sein, dass die verknüpften Arbeitselemente nicht abgeschlossen werden können.When attempting to complete work items with a pull request, it is possible that the associated work item cannot be transitioned to the completed state. Es kann z.B. sein, dass ein Feld erforderlich ist, für das der Benutzer eine Eingabe vornehmen muss, bevor der Zustand gewechselt werden kann.For example, a specific field might be required and needs user input before the state can transition. Wir haben den Prozess verbessert, mit dem Sie darüber informiert werden, dass das Abschließen eines Arbeitselements blockiert wird, sodass Sie sofort reagieren und Änderungen vornehmen können.We have improved the experience to inform you when something is blocking the work item transition, enabling you to take action to make the necessary changes.

Arbeitselementfehler, PRError work items PR

Erwähnen eines Pull RequestsMention a pull request

Sie können jetzt einen Pull Request in den PR-Kommentaren und Arbeitselementdiskussionen erwähnen.You can now mention pull requests in PR comments and work item discussions. Das Erwähnen eines PR ist so ähnlich wie das Erwähnen eines Arbeitselements. Allerdings wird ein Ausrufezeichen ! statt eines Hashzeichens # verwendet.The experience for mentioning a PR is similar to that of a work item, but uses an exclamation point ! instead of a hash mark #.

Wenn Sie einen Pull Request erwähnen möchten, geben Sie ein ! ein. Dann können Sie einen Pull Request interaktiv aus der Liste Ihrer zuletzt bearbeiteten Pull Requests auswählen.Whenever you want to mention a PR, enter a !, and you will see an interactive experience for picking a PR from your list of recent PRs. Geben Sie Schlüsselwörter ein, um die Liste der Vorschläge zu filtern, oder geben Sie die ID des Pull Requests ein, den Sie erwähnen möchten.Enter keywords to filter the list of suggestions, or enter the ID of the PR you want to mention. Wenn ein Pull Request erwähnt wurde, wird er in der gleichen Zeile mit der ID und dem vollständigen Titel gerendert. Außerdem wird ein Link zur Detailseite des Pull Requests erzeugt.Once a PR is mentioned, it is rendered inline with the ID and the full title, and it will link to the PR details page.

Pull Request erwähnenMention a pull request

Pull Request-Bezeichnungen für ReviewerHelp reviewers using pull request labels

Manchmal ist es wichtig, den Reviewern zusätzliche Angaben zu einem Pull Request zu übermitteln.Sometimes it is important to communicate extra information about a pull request to the reviewers. Möglicherweise befindet der PR sich noch in der Bearbeitung, oder er ist ein Hotfix für ein kommendes Release, weshalb Sie zusätzliche Informationen im Titel anfügen, z.B. ein vorangestelltes „[WIP]“ (Work in Progress, Noch in Bearbeitung) oder ein hinten angestelltes „DO NOT MERGE“ (Nicht mergen).Maybe the pull request is still a work in progress, or it is a hotfix for an upcoming release - so you append some extra text in the title, perhaps a "[WIP]" prefix or "DO NOT MERGE". Mit Bezeichnungen können Sie jetzt PRs mit weiteren Informationen versehen, die für wichtige Angaben und zum Organisieren von PRs verwendet werden können.Labels now provide a way to tag pull requests with extra information that can be used to communicate important details and help organize pull requests.

PR, BezeichnungenPR request labels

Pull Request-Kommentare folgen benannten DateienPull request comments follow renamed files

Manchmal werden Dateien umbenannt oder verschoben, während ein PR aktiv ist.Sometimes files are renamed or moved while a pull request is active. Wenn diese umbenannten Dateien kommentiert wurden, zeigte die neueste Ansicht des Codes früher die Kommentare nicht an.Previously, if there were comments on those renamed files, the latest view of the code would not display the comments. Wir haben das Nachverfolgen von Kommentaren verbessert, um auch umbenannte Dateien nachverfolgen zu können, sodass Kommentare in den neuesten Versionen der umbenannten oder verschobenen Dateien angezeigt werden.We have now improved comment tracking to follow the renames, displaying comments on the latest version of renamed or moved files.

Anzeigen des Pull Request-MergecommitsView pull request merge commit

PR-Vergleichsansichten heben Änderungen am Quellbranch hervor.Pull request diff views are great at highlighting the changes introduced in the source branch. Wenn jedoch der Zielbranch geändert wird, kann es sein, dass die Vergleichsansicht anders als erwartet aussieht.However, changes to the target branch may cause the diff view to look different than expected. Jetzt ist ein neuer Befehl verfügbar, um die Unterschiede des „Vorschau“-Mergecommits des Pull Requests anzuzeigen: Mergecommit anzeigen.A new command is now available to view the diff of the "preview" merge commit for the pull request - View merge commit. Dieser Mergecommit wird erstellt, um auf Mergekonflikte zu prüfen und um mit einem PR-Build verwendet zu werden. Er zeigt, wie der Mergecommit aussehen wird, wenn der PR abgeschlossen wird.This merge commit is created to check for merge conflicts and to use with a pull request build, and it reflects what the merge commit will look like when the pull request is eventually completed. Wenn die Vergleichsansicht einige Änderungen des Zielbranchs nicht widerspiegelt, kann die Mergecommitvergleichsansicht nützlich sein, um die letzten Änderungen im Quell- und Zielbranch anzuzeigen.When the target branch has changes not reflected in the diff, the merge commit diff can be useful for seeing the latest changes in both the source and target branches.

Anzeigen des Pull Request-MergecommitsView pull request merge commit

Ein weiterer praktischer Befehl neben Mergecommit anzeigen ist der Befehl Mergevorgang erneut starten (der im gleichen Befehlsmenü zur Verfügung steht).Another command that is useful in conjunction with the View merge commit command is Restart merge (available on the same command menu). Wenn sich der Zielbranch seit der ersten Erstellung des Pull Requests geändert hat, wird durch das Ausführen dieses Befehls ein neuer Vorschaumergecommit erstellt, sodass die Vergleichsansicht des Mergecommits aktualisiert wird.If the target branch has changed since the pull request was initially created, running this command creates a new preview merge commit, updating the merge commit diff view.

Zuletzt eingesetzte ReviewerRecently used reviewers

Wenn Sie Ihren Code häufig von den gleichen Reviewern prüfen lassen, können Sie nun noch leichter Reviewer hinzufügen.If you frequently have your code reviewed by the same individuals, you will find it easier than ever to add reviewers. Wenn Sie Ihrem PR Reviewer hinzufügen, wird automatisch eine Liste der zuletzt eingesetzten Reviewer angezeigt, wenn Sie das Feld zum Festlegen eines Reviewers auswählen. Sie müssen nicht mehr nach einem Namen suchen.When adding reviewers to your pull requests, a list of your recently added reviewers is automatically displayed when you put focus into the reviewers input box -- no need to search by name. Wählen Sie diese wie gewohnt aus.Select them as you would any reviewer.

MRU-ReviewerMRU reviewers

Anzeigen der ausstehenden Richtlinienkriterien für das automatische Vervollständigen von Pull RequestsView remaining policy criteria for pull request auto-complete

Die automatische Vervollständigung ist ein praktisches Feature für Teams mit Branchrichtlinien. Wenn aber optionale Richtlinien verwendet werden, kann möglicherweise schwer festgestellt werden, was das Abschließen eines Pull Requests verhindert.Auto-complete is a useful feature for teams using branch policies, but when using optional policies, it can be unclear exactly what is blocking a pull request from being completed. Wenn Sie die automatische Vervollständigung für alle PRs festlegen, wird im Aufruffeld eine genaue Liste der Richtlinienkriterien angezeigt, die das Abschließen verhindern.Now, when setting auto-complete for a pull request, the exact list of policy criteria that are holding up completion are clearly listed in the callout box. Sobald Anforderungen erfüllt werden, werden die entsprechenden Elemente aus der Liste entfernt, bis es keine ausstehenden Anforderungen mehr gibt, und der PR wird zusammengeführt.As each requirement is met, items are removed from the list until there are no remaining requirements and the pull request is merged.

Listen der automatischen Vervollständigung von PRsPR auto-complete lists

Besprechen von Berechnungen in Pull RequestsDiscuss math in pull requests

Müssen Sie eine Gleichung oder einen mathematischen Ausdruck in Ihren PR-Kommentar einfügen?Need to include an equation or mathematical expression in your pull request comments? Sie können jetzt in den Kommentaren KaTeX-Funktionen einfügen und das sowohl bei Inline- als auch bei Blockkommentaren.You can now include KaTeX functions in your comments, using both inline and block commenting. Weitere Informationen finden Sie in der Liste der unterstützten Funktionen.See the list of supported functions for more information.

PR, Markdownkommentar mit GleichungPR markdown comment with math

Pull Request-Vorschläge für ForksPull request suggestions for forks

Immer wenn ein Topic-Branch in einem Repository aktualisiert wird, wird ein „Vorschlag“ zum Erstellen eines neuen Pull Requests für den Topic-Branch angezeigt.Whenever a topic branch is updated in a repository, a "suggestion" to create a new pull request (PR) for the topic branch is shown. Das kann zum Erstellen neuer Pull Requests sehr praktisch sein. Diese Funktion wurde auch für verzweigte Repositorys aktiviert.This is very useful for creating new PRs, and we have enabled it for those working in a forked repo, too. Wenn Sie einen Branch in einem Fork aktualisieren, sehen Sie den Vorschlag zum Erstellen eines neuen Pull Requests, wenn Sie das nächste Mal den Hub Code für den Fork oder das Upstreamrepository besuchen.If you update a branch in a fork, the next time you visit the Code hub for either the fork or the upstream repo, you will see the suggestion to create a pull request. Wenn Sie „Pull Request erstellen“ auswählen, werden Sie zum Erstellungsprozess eines Pull Requests weitergeleitet. Dabei sind die Quell- und Zielbranches und -repositorys vorausgewählt.If you select the "Create a pull request" link, you will be directed to the create PR experience, with the source and target branches and repos pre-selected.

PR, Vorschlag für ForksPR suggest for forks

Pfadfilter für PR-RichtlinienPath filters for pull request policies

Häufig enthält ein einziges Repository Code, der durch mehrere Continuous Integration-Pipelines (CI) erstellt wurde, um den Build zu überprüfen und Tests auszuführen.Many times, a single repository contains code that is built by multiple continuous integration (CI) pipelines to validate the build and run tests. Die integrierte Buildrichtlinie unterstützt jetzt eine Option zum Filtern von Pfaden, mit der mehrere PR-Builds leicht konfiguriert werden können, die für jeden PR angefordert und ausgelöst werden können.The integrated build policy now supports a path filtering option that makes it easy to configure multiple PR builds that can be required and automatically triggered for each PR. Geben Sie einen Pfad an, der für jeden Build erforderlich ist, und legen Sie die Optionen zum Auslösen und Erfordern wie gewünscht fest.Just specify a path for each build to require, and set, the trigger and requirement options as desired.

Pfadfilter für PR-RichtlinienPath filters for PR policies

Zusätzlich zu den Buildrichtlinien stehen die Pfadfilteroptionen auch für Statusrichtlinien zur Verfügung.In addition to build, status policies also have the path filtering option available. Dadurch können benutzerdefinierte Richtlinien oder Drittanbieterrichtlinien bestimmte Pfade für das Erzwingen von Richtlinien konfigurieren.This allows any custom or third party policies to configure policy enforcement for specific paths.

Dieses Feature hat aufgrund eines Vorschlags Priorität erhalten.This feature was prioritized based on a suggestion.

ArbeitWork

Tastenkombinationen im ArbeitselementformularKeyboard shortcuts in the work item form

Weisen Sie sich selbst ein Arbeitselement zu (ALT+I), wechseln Sie zur Diskussion (STRG+ALT+D), und kopieren Sie einen Quicklink zum Arbeitselement mit der Tastenkombinationen (UMSCHALT+ALT+C).Assign a work item to yourself (Alt + i), jump to discussion (Ctrl + Alt + d), and copy a quick link to the work item (Shift + Alt + c) using keyboard shortcuts. Geben Sie zur Anzeige der vollständigen Liste der neuen Verknüpfungen „?“ ein, wobei ein Arbeitsaufgabenformular geöffnet sein muss, oder nutzen Sie die folgende Tabelle.For the full list of new shortcuts, type "?" with a work item form open or see the table below.

Tastenkombinationen im ArbeitselementformularKeyboard shortcuts in work item form

Modernisierte SpaltenoptionenModernized column options

Das Dialogfeld Spaltenoptionen, über das die Spalten des Arbeitselementrasters in den Hubs Backlog, Anfragen und Test konfiguriert werden, verfügt jetzt über ein neues Bereichsdesign.The Column options dialog used to configure the columns of the work item grid in the Backlog, Queries, and Test hubs has been updated to use a new panel design. Führen Sie eine Suche durch, um ein Feld zu finden, und ziehen die Spalten an die von Ihnen gewünschten Stellen, oder entfernen Sie nicht länger benötigte Spalten.Search to find a field, drag and drop to reorder columns, or remove existing columns you no longer want.

Modernisierte SpaltenoptionenModernized column options

Informationen zur letzten Ausführung einer AbfrageQuery last run by information

Wenn die Struktur freigegebener Abfragen Ihres Projekts wächst, kann es schwierig sein, zu bestimmen, ob eine Abfrage nicht mehr verwendet wird und gelöscht werden kann.As your project's Shared Queries tree grows, it can be difficult to determine if a query is no longer used and can be deleted. Um Ihnen das Verwalten Ihrer freigegebenen Abfragen zu erleichtern, haben wir zwei neue Metadaten zu den Abfrage-REST-APIs hinzugefügt: „Last executed by“ (Zuletzt ausgeführt von) und „Last executed date“ (Zuletzt ausgeführt am). So können Sie Bereinigungsskripts schreiben, die veraltete Abfragen löschen.To help you manage your Shared Queries, we have added two new pieces of metadata to our query REST APIs, last executed by and last executed date, so that you can write clean-up scripts to delete stale queries.

HTML-Tags aus Arbeitselementrastern entferntHTML tags stripped in work item grids

Als Reaktion auf Kundenfeedback haben wir das Verhalten von Textfeldern mit mehreren Zeilen in der Ergebnisansicht der Arbeitselementabfragen in der Web-, Excel- und Visual Studio-IDE aktualisiert und die HTML-Formatierung entfernt.Based on customer feedback, we have updated the behavior of multi-line text fields in work item query results views in the web, Excel, and Visual Studio IDE to remove HTML formatting. Wenn diese einer Abfrage als Spalte hinzugefügt werden, werden Textfelder mit mehreren Zeilen jetzt als Nur-Text angezeigt.When added as a column to the query, multi-line text fields now display as plain text. Hier sehen Sie ein Beispiel für ein Feature mit HTML in der Beschreibung:Here is an example of a feature with HTML in the description.

Entfernen von HTML-TagsStrip HTML tags

In der Vergangenheit hätten Abfrageergebnisse etwas wie das Folgende gerendert: <div><b><u>Customer Value</u>....In the past, the query results would have rendered something like <div><b><u>Customer Value</u>...

Unterstützung für den Abfrageoperator NOT IN hinzugefügtAdded support for Not In query operator

Felder, die den Abfrageoperator IN unterstützen, unterstützen jetzt auch NOT IN.Fields that support the "In" query operator now support "Not In". Sie können Abfragen für Arbeitselemente schreiben, die sich „Nicht in“ in einer Liste von IDs, „Nicht in“ einer Liste von Zuständen befinden und so weiter, und das alles, ohne viele OR-Klauseln erstellen zu müssen.Write queries for work items "Not In" a list of IDs, "Not In" a list of states, and much more, all without having to create many nested "Or" clauses. Dieses Feature wurde von einem Kunden vorgeschlagen.This feature was prioritized based on a customer suggestion. Senden Sie uns auch weiterhin Vorschläge, und stimmen Sie für die Features ab, die Sie für wichtig halten.Keep submitting those ideas and voting up those most important to you.

Abfrageoperator NOT INNot In query operator

Abfragen für @MyRecentActivity und @RecentMentionsQuery for @MyRecentActivity and @RecentMentions

Wir haben zwei neue Abfragemakros für das ID-Feld hinzugefügt, sodass Sie für Sie relevante Arbeitselemente finden können.We have introduced two new query macros for the ID field to help you find work items that may be important to you. Sie können sich mit @RecentMentions ansehen, in welchen Arbeitselementen Sie in den letzten 30 Tagen erwähnt wurden, und mit @MyRecentActivity, welche Arbeitselemente Sie zuletzt angesehen oder bearbeitet haben.See what items you were mentioned in over the last 30 days using @RecentMentions or take a look at work items you have recently viewed or edited using @MyRecentActivity.

Benutzerdefinierte Felder und Tagsfilter in Benachrichtigungen zum Verfolgen von ArbeitsaufgabenCustom fields and tags filter in work item tracking notifications

Sie können jetzt Benachrichtigungen mit Bedingungen in benutzerdefinierten Feldern und Tags festlegen – und das nicht nur, wenn sie sich ändern, sondern auch, wenn bestimmte Werte erreicht werden.Notifications can now be defined using conditions on custom fields and tags; not only when they change but when certain values are met. Dies ist einer der häufigsten Kundenvorschläge auf UserVoice (siehe 6059328 und 2436843). Dadurch können Sie robustere Benachrichtigungen für Arbeitselemente festlegen.This has been a top customer suggestion in UserVoice (see 6059328 and 2436843), and allows for a more robust set of notifications that can be set for work items.

Benutzerdefinierte Benachrichtigungseinstellungen für Arbeitselementecustom work item notification settings

Unterstützung von „Mentioned“ (Erwähnungen) unter „Eigene Arbeitselemente“Mentioned support for the My work items page

Wir haben die neue Navigationssteuerung Mentioned (Erwähnungen) auf der Seite Eigene Arbeitselemente hinzugefügt.We have added a new Mentioned pivot under the My work items page. In diesem Reiter können Sie sich ansehen, in welchen Arbeitselementen Sie in den letzten 30 Tagen erwähnt wurden.Inside this pivot, you can review the work items where you have been mentioned in the last 30 days. Durch diese neue Ansicht können Sie schnell auf Elemente reagieren, die Ihr Eingreifen erfordern, und bei relevanten Unterhaltungen auf dem Laufenden bleiben.With this new view, you can quickly take action on items that require your input and stay up to date on conversations that are relevant to you.

Reiter „Erwähnungen“ (Mobil)mentioned work

Dieser Reiter steht auch für mobilen Zugriff zur Verfügung, sodass die mobile Version und die Desktopversion einheitlich sind.This same pivot is also available through our mobile experience, bringing consistency between both mobile and desktop.

Reiter „Erwähnungen“ (Mobil)mentioned work

Filtern von PlänenFiltering on plans

Die Erweiterung Lieferpläne verwendet nun unsere allgemeine Filterkomponente und ist mit unseren Rasterfilteroberflächen für Arbeitselemente und Boards konsistent.The Delivery Plans extension now makes use of our common filtering component, and is consistent with our grid filtering experiences for work items and Boards. Dieses Filtersteuerelement bringt eine verbesserte Benutzerfreundlichkeit und eine konsistente Oberfläche für alle Teammitglieder mit sich.This filtering control brings improved usability and a consistent interface to all members of your team.

Filtern von PlänenFiltering on Plans

Aktualisierte Navigation durch PläneUpdated plans navigation

Für viele Benutzer sind nur einige wenige Pläne besonders relevant, weshalb sie die Favoriten für einen schnellen Zugriff verwenden.Many of you care about a specific plan or set of plans and use favorites for quick access to the content. Zunächst haben wir den Hub Pläne aktualisiert, sodass er nun zu den zuletzt besuchten Plänen navigiert und nicht zur Verzeichnisseite.First, we have updated the Plans hub to navigate to your most recently visited plan instead of the directory page. Wenn Sie sich dort befinden, können Sie die Favoritenauswahl verwenden, um schnell zu einem anderen Plan zu wechseln, oder verwenden Sie die Breadcrumb-Leiste, um zurück zur Verzeichnisseite zu navigieren.Second, once there, you can use the favorites picker to quickly switch to another plan or use the breadcrumb to navigate back to the directory page.

Aktualisierte Navigation durch PläneUpdated Plans navigation

Erweitern/Reduzieren von Elementen auf dem Task BoardExpand/collapse requirements/people on the task board

Sie können jetzt alle Elemente auf dem Sprint-Task Board mit einem einzigen Klick erweitern oder reduzieren.You can now expand or collapse all the items on the sprint Task board with just a single click.

Erweitern/Reduzieren, Task BoardExpand collapse Task board

Erteilen der Berechtigung zum Umgehen von Regeln für bestimmte BenutzerGrant the bypassrule permission to specific users

Beim Migrieren von Arbeitselementen aus einer anderen Quelle möchten Organisationen oft die ursprünglichen Eigenschaften des Arbeitselements beibehalten.Often, when migrating work items from another source, organizations want to retain all the original properties of the work item. Sie können z.B. einen Fehler erstellen, um das Datum der ursprünglichen Erstellung und den ursprünglichen Ersteller beizubehalten.For example, you may want to create a bug that retains the original created date and created by values from the system where it originated.

Die API zum Aktualisieren eines Arbeitselements verfügt über ein Flag zum Umgehen einer Regel, um dieses Szenario zu ermöglichen.The API to update a work item has a bypassrule flag to enable that scenario. Bisher musste die Identität, von der die API-Anforderung stammt, ein Mitglied der Gruppe „Projektauflistungsadministratoren“ sein.Previously, the identity who made that API request had to be a member of the Project Collection Administrators group. Es wurde eine Berechtigung auf Projektebene zum Ausführen der API mit dem Flag zum Umgehen dieser Regel hinzugefügt.We have added a permission at the project level to execute the API with the bypassrule flag.

Berechtigung zum Umgehen der RegelGrant bypassrule

Build und ReleaseBuild and Release

XAML-BuildsXAML builds

Mit TFS 2015 haben wir ein webbasiertes, plattformübergreifendes Buildsystem eingeführt.In TFS 2015, we introduced a web-based, cross-platform build system. XAML-Builds werden in TFS 2018 RTW oder Update 1 nicht unterstützt. Wir haben XAML-Builds in TFS 2018 Update 2 jedoch erneut aktiviert.XAML builds are not supported in TFS 2018 RTW or Update 1, but we have re-enabled XAML builds in TFS 2018 Update 2. Wir empfehlen Ihnen, migrate your XAML builds (Ihre XAML-Builds zu migrieren).We encourage you to migrate your XAML builds.

Wenn Sie ein Upgrade auf TFS 2018 Update 2 durchführen:When you upgrade to TFS 2018 Update 2:

  • Wenn sich noch irgendwelche XAML-Builddaten in Ihrer Teamprojektsammlung befinden, wird Ihnen die Warnung angezeigt, dass die XAML-Buildfeatures veraltet sind.If you have any XAML build data in your team project collection, you will get a warning about the deprecation of XAML build features.

  • Sie müssen VS 2017 oder Team Explorer 2017 verwenden, um XAML-Builddefinitionen zu bearbeiten oder um neue XAML-Builds in die Warteschlange aufzunehmen.You will need to use VS or Team Explorer 2017 to edit XAML build definitions or to queue new XAML builds.

  • Wenn Sie neue XAML-Build-Agents erstellen müssen, müssen Sie diese mithilfe des TFS 2015-Build-Agent-Installers installieren.If you need to create new XAML build agents, you will need to install them using the TFS 2015 build agent installer.

Eine Erläuterung unseres Plans, wie XAML-Builds veralten, finden Sie im Blogbeitrag Evolving TFS/Team Services build automation capabilities.For an explanation of our XAML build deprecation plan, see the Evolving TFS/Team Services build automation capabilities blog post.

Verbesserungen von Builds mit mehreren PhasenEnhancements to multi-phase builds

Es ist bereits seit Längerem möglich, Phasen zum Organisieren der Schritte zum Erstellen und zum Ausrichten auf unterschiedliche Agents mithilfe verschiedener Anforderungen für jede Phase zu verwenden.You have been able to use phases to organize your build steps and to target different agents using different demands for each phase. Wir haben mehrere Funktionen zum Erstellen von Phasen hinzugefügt. Sie können nun folgende Aktionen durchführen:We have added several capabilities to build phases so that you can now:

  • Eine andere Agent-Warteschlange für jede Phase angeben.Specify a different agent queue for each phase. Das bedeutet, dass Sie z.B. Folgendes tun können:This means you can, for example:

  • Tests schneller ausführen, indem Sie sie gleichzeitig ausführen.Run tests faster by running them in parallel. Jede Phase, für die die Parallelität als „Multi-Agent“ konfiguriert ist und die einen „VSTest“-Task enthält, parallelisiert nun automatisch die Testausführung für die konfigurierte Anzahl von Agents.Any phase that has parallelism configured as "Multi-agent" and contains a "VSTest" task now automatically parallelize test execution across the configured agent count.

  • Skripts erlauben oder verweigern, um in jeder Phase auf das OAuth-Token zuzugreifen.Permit or deny scripts to access the OAuth token each phase. Das bedeutet, dass Sie z.B. erlauben können, dass Skripts, die in Ihrer Erstellungsphase ausgeführt werden, mit VSTS über REST-APIs kommunizieren. Sie können in derselben Builddefinition auch die Skripts blockieren, die in Ihrer Testphase ausgeführt werden.This means, for example, you can now allow scripts running in your build phase to communicate with VSTS over REST APIs, and in the same build definition block the scripts running in your test phase.

  • Phasen nur unter bestimmten Bedingungen ausführen.Run a phase only under specific conditions. Sie können z.B. eine Phase konfigurieren, die nur ausgeführt wird, wenn vorherige Phasen erfolgreich ausgeführt wurden, oder nur, wenn Sie Code im master-Branch erstellen.For example, you can configure a phase to run only when previous phases succeed, or only when you are building code in the master branch.

Weitere Informationen finden Sie unter Phases in Build and Release Management (Phasen in der Build- und Releaseverwaltung).To learn more, see Phases in Build and Release Management.

Überspringen von geplanten Builds, wenn sich im Repository nichts geändert hatSkip scheduled builds if nothing has changed in the repo

Da dies häufig über UserVoice angefordert wurde, können Sie nun angeben, dass ein geplanter Build nicht ausgeführt wird, wenn sich in Ihrem Code nichts geändert hat.By popular request on UserVoice, you can now specify that a scheduled build not run when nothing has changed in your code. Sie können dieses Verhalten nun mithilfe einer Option auf dem Zeitplan steuern.You can control this behavior using an option on the schedule. Standardmäßig planen wir keinen neuen Build, wenn Ihr letzter geplanter Build (aus demselben Zeitplan) erfolgreich war und keine weiteren Änderungen in Ihrem Repository eingecheckt wurden.By default, we will not schedule a new build if your last scheduled build (from the same schedule) has passed and no further changes have been checked in to your repo.

Erstellen mit Continuous Integration von GitHub EnterpriseBuild with continuous integration from GitHub Enterprise

Sie verfügen nun über eine verbesserte Integration zum Ausführen von Continuous Integration-Builds, wenn Sie GitHub Enterprise für die Versionskontrolle verwenden.You now have better integration for performing continuous integration (CI) builds if you use GitHub Enterprise for version control. Zuvor konnten Sie Codeänderungen nur mithilfe des externen Git-Connectors abrufen. Dies konnte zu einer Erhöhung der Serverlast und zu Verzögerungen vor dem Auslösen eines Builds führen.Previously, you were limited to polling for code changes using the External Git connector, which may have increased the load on your servers and caused delays before builds were triggered. Mit dem offiziellen Support von GitHub Enterprise werden jetzt CI-Teambuilds sofort ausgelöst.Now, with official GitHub Enterprise support, team CI builds are immediately triggered. Zusätzlich dazu kann die Verbindung mithilfe unterschiedlicher Authentifizierungsmethoden wie LDAP oder integrierten Konten konfiguriert werden.In addition, the connection can be configured using various authentication methods, such as LDAP or built-in accounts.

Buildquellenoption „GitHub Enterprise“GitHub Enterprise build source option

Sichere Dateien können während des Builds oder des Releases für Agents heruntergeladen werden.Secure files can be downloaded to agents during build or release

Der neue Task Download Secure File (Sichere Datei herunterladen) unterstützt das Herunterladen (auf Agent-Computer) von verschlüsselten Dateien aus der Bibliothek VSTS Secure Files (Sichere VSTS-Dateien).The new Download Secure File task supports downloading (to agent machines) encrypted files from the VSTS Secure Files library. Sobald die Datei heruntergeladen wurde, wird sie entschlüsselt und auf dem Datenträger des Agents gespeichert.As the file is downloaded, it is decrypted and stored on the agent's disk. Wenn der Build bzw. der Release abgeschlossen ist, wird die Datei vom Datenträger des Agents gelöscht.When the build or release completes, the file is deleted from the agent. Dadurch kann Ihr Build oder Ihr Release vertrauliche Dateien wie Zertifikate oder private Schlüssel verwenden, die andernfalls in VSTS sicher verschlüsselt und gespeichert werden.This allows your build or release to use sensitive files, such as certificates or private keys that are otherwise securely encrypted and stored in VSTS. Weitere Informationen finden Sie in der Dokumentation zu sicheren Dateien.For more information, see Secure files documentation.

Installation von Apple-Bereitstellungsprofilen aus QuellrepositorysApple provisioning profiles can be installed from source repositories

Der Task Apple-Bereitstellungsprofil installieren unterstützt bereits das Installieren von Bereitstellungsprofilen (auf Agent-Computern), die in der Bibliothek VSTS Secure Files gespeichert sind.The Install Apple Provisioning Profile task already supports installing (on agent machines) provisioning profiles that are stored in the VSTS Secure Files library. Bereitstellungsprofile werden von Xcode zum Signieren und Packen von Apple-Apps für iOS, macOS, tvOS und watchOS verwendet.Provisioning profiles are used by Xcode to sign and package Apple apps, such as for iOS, macOS, tvOS, and watchOS. Jetzt können Bereitstellungsprofile aus Quellrepositorys installiert werden.Now, provisioning profiles can be installed from source code repositories. Das Verwenden der Secure Files-Bibliothek wird zwar bereits für eine erhöhte Sicherheit dieser Dateien empfohlen, aber diese Verbesserung geht auf Bereitstellungsprofile ein, die bereits in der Quellcodeverwaltung gespeichert wurden.Though use of the Secure Files library is recommended for greater security of these files, this improvement addresses provisioning profiles already stored in source control.

Apple-BereitstellungApple provisioning

Rückverfolgen von GitHub-Quellen auf Builds mithilfe von BuildtagsTrace GitHub sources to builds using build tags

Builds von GitHub oder GitHub Enterprise sind bereits mit dem relevanten Commit verknüpft.Builds from GitHub or GitHub Enterprise already link to the relevant commit. Es ist jedoch genauso wichtig, einen Commit auf den Build zurückführen zu können, der ihn erstellt hat.It is equally important to be able to trace a commit to the builds that built it. Dies ist nun durch das Aktivieren von Quelltagging in TFS möglich.That is now possible by enabling source tagging in TFS. Wählen Sie bei der Auswahl eines GitHub-Repositorys in einer Builddefinition den Typ des Builds aus, den Sie markieren möchten, und das Tagformat.While choosing your GitHub repository in a build definition, select the types of builds you want to tag, along with the tag format.

Quelltags, OptionenTag sources options

Dann werden in Ihrem GitHub- oder GitHub Enterprise-Repository Buildtags angezeigt.Then watch build tags appear on your GitHub or GitHub Enterprise repository.

Beispiele für markierte Quellen auf GitHubTagged sources examples in GitHub

Sie können während Builds und Releases bestimmte Java Development Kits (JDKs) installieren.Specific Java Development Kits (JDKs) can be installed during builds and releases

Es ist möglich, dass zum Erstellen gewisser Java-Projekte bestimmte JDKs erforderlich sind, die nicht auf Agent-Computern verfügbar sind.For building certain Java projects, specific JDKs may be required but unavailable on agent machines. Es kann sein, dass Projekte z.B. ältere oder andere Versionen von IBM, Oracle oder Open-Source-JDKs erfordern.For example, projects may require older or different versions of IBM, Oracle, or open-source JDKs. Der Task Installer des Java-Tools lädt das für Ihr Projekt erforderliche JDK während eines Builds oder Releases herunter und installiert dieses.The Java Tool Installer task downloads and installs the JDK needed by your project during a build or release. Die Umgebungsvariable JAVA_HOME wird entsprechend der Dauer des Builds oder Releases festgelegt.The JAVA_HOME environment variable is set accordingly for the duration of the build or release. Für den Installer des Java-Tools können bestimmte JDKs mithilfe einer Dateifreigabe, eines Quellcoderepositorys oder mithilfe von Azure Blob Storage verfügbar gemacht werden.Specific JDKs are available to the Java Tool Installer using a file share, a source code repository, or Azure Blob Storage.

Verbesserte Xcode-BuildkonfigurationImproved Xcode build configuration

Der Xcode-Task wurde auf eine neue Hauptversion (4.*) aktualisiert. Dadurch wurde die Konfiguration des Erstellens, Testens und Packens von Xcode verbessert.The Xcode task has been updated with a new major version (4.*) that improves configuration of Xcode building, testing, and packaging. Wenn Ihr Xcode-Projekt über ein einziges, freigegebenes Schema verfügt, wird es automatisch verwendet.If your Xcode project has a single, shared scheme, it is automatically used. Es wurde zusätzliche Inlinehilfe hinzugefügt.Additional inline help was added. Veraltete Features wie das Xcrun-Packen wurden aus den Eigenschaften des Xcode-Tasks entfernt.Deprecated features, such as xcrun packaging, were removed from the Xcode task's properties. Vorhandene Build- und Releasedefinitionen müssen angepasst werden, um die aktuelle 4.*-Version des Xcode-Tasks verwenden zu können.Existing build and release definitions must be modified to use this latest 4.* version of the Xcode task. Wenn Sie für neue Definitionen die veralteten Funktionen einer vorherigen Version des Xcode-Tasks benötigen, können Sie diese Version in Ihrer Definition auswählen.For new definitions, if you need a previous Xcode task version's deprecated capabilities, you can select that version in your definition.

ReleasegatesRelease gates

Die ständige Überwachung ist ein wesentlicher Teil von DevOps-Pipelines.Continuous monitoring is an integral part of DevOps pipelines. Nach der Bereitstellung sicherzustellen, dass die App im Release fehlerfrei funktioniert, ist genauso wichtig wie der Erfolg der Bereitstellung selbst.Ensuring the app in a release is healthy after deployment is as critical as the success of the deployment process. Unternehmen setzen unterschiedliche Tools zum automatischen Erkennen der App-Integrität in der Produktion und zum Erfassen von von Kunden gemeldeten Problemen ein.Enterprises have adopted various tools for automatic detection of app health in production and for keeping track of customer reported incidents. Bis jetzt mussten Genehmiger die Integrität einer App manuell auf allen Systemen überprüfen, bevor das Release höher gestuft werden konnte.Until now, approvers had to manually monitor the health of the apps from all the systems before promoting the release. Die Releaseverwaltung unterstützt jetzt die Integration ständiger Überwachung in die Releasepipeline.However, Release Management now supports integrating continuous monitoring into release pipelines. Verwenden Sie diese Funktion, um sicherzustellen, dass das System alle Integritätssignale der App wiederholt abfragt, bis alle fehlerfrei sind. Erst dann sollte mit dem Release fortgefahren werden.Use this to ensure the system repeatedly queries all the health signals for the app until all of them are successful at the same time, before continuing the release.

Beginnen Sie in der Releasedefinition mit der Definition von Gates für vor und nach der Bereitstellung.You start by defining pre-deployment or post-deployment gates in the release definition. Jedes Gate kann mindestens ein Integritätssignal überwachen, das mit einem Überwachungssystem der App verknüpft ist.Each gate can monitor one or more health signals corresponding to a monitoring system of the app. Integrierte Gates stehen für „Azure-Überwachungswarnungen (Application Insight)“ und „Arbeitselemente“ zur Verfügung.Built-in gates are available for "Azure monitor (application insight) alerts" and "Work items". Sie können durch die Flexibilität von Azure Functions eine Integration mit anderen Systemen durchführen.You can integrate with other systems using the flexibility offered through Azure functions.

Releases mit GatesGated releases

Zur Laufzeit entnimmt das Release Stichproben und erfasst Integritätssignale aller Gates.At the time of execution, the Release starts to sample all the gates and collect health signals from each of them. Das Sampling wird nach jedem Intervall erneut durchgeführt, bis die Signale aller Gates im gleichen Intervall fehlerfrei sind.It repeats the sampling at each interval until signals collected from all the gates in the same interval are successful.

SamplingintervallSampling interval

Erste Stichproben der Überwachungssysteme sind möglicherweise nicht genau, da zur neuen Bereitstellung noch nicht genügend Informationen vorliegen.Initial samples from the monitoring systems may not be accurate, as not enough information may be available for the new deployment. Die Option „Verzögerung vor der Auswertung“ stellt sicher, dass das Release während dieser Phase nicht fortfährt, auch wenn alle Stichproben fehlerfrei sind.The "Delay before evaluation" option ensures the Release does not progress during this period, even if all samples are successful.

Während des Samplings von Gates werden weder Agents noch Pipelines verwendet.No agents or pipelines are consumed during sampling of gates. Weitere Informationen finden Sie in der Dokumentation zu Releasegates.See the documentation for release gates for more information.

Selektive Bereitstellung auf Grundlage des Artefakts, das ein Release auslöstDeploy selectively based on the artifact triggering a release

Mehrere Artefaktquellen können einer Releasedefinition hinzugefügt und so konfiguriert werden, dass Sie ein Release auslösen.Multiple artifact sources can be added to a release definition and configured to trigger a release. Ein neues Release wird erstellt, wenn ein neuer Build für eine der Quellen verfügbar ist.A new release is created when a new build is available for either of the sources. Der Bereitstellungsprozess wird unabhängig von der auslösenden Quelle immer gleich durchgeführt.The same deployment process is executed regardless of what source triggered the release. Sie können den Bereitstellungsprozess jetzt auf Grundlage der auslösenden Quelle anpassen.You can now customize the deployment process based on the triggering source. Für automatisch ausgelöste Releases wird die Releasevariable Release.TriggeringArtifact.Alias jetzt aufgefüllt, um die Artefaktquelle anzugeben, die das Release ausgelöst hat.For auto-triggered releases, the release variable Release.TriggeringArtifact.Alias is now populated to identify the artifact source that triggered the release. Dies kann bei Taskbedingungen, Phasenbedingungen und Taskparametern verwendet werden, um den Prozess dynamisch anzupassen.This can be used in task conditions, phase conditions, and task parameters to dynamically adjust the process. Diese Funktion kann praktisch sein, wenn Sie Artefakte, die sich je nach Umgebung unterscheiden, bereitstellen müssen.For example, if you only need to deploy the artifacts that changed through environments.

Verwalten entitätsspezifischer SicherheitManage entity-specific security

Vor diesem Update wurden die Sicherheitszugriffsrollen bei der rollenbasierten Sicherheit für Benutzer oder Gruppen auf Hubebene für Bereitstellungsgruppen, Variablengruppen, Agent-Warteschlangen oder Dienstendpunkte festgelegt.Previously in role based security, when the security access roles were set, they were set for a user or group at hub level for Deployment groups, Variable groups, Agent queues, and Service endpoints. Jetzt können Sie die Vererbung für eine bestimme Entität aktivieren oder deaktivieren, sodass die Sicherheit genau Ihren Wünschen entspricht.Now you can turn on and off inheritance for a particular entity so you can configure security just the way you want to.

Dialogfeld „Sicherheit“Security dialog

Genehmigen mehrerer UmgebungenApprove multiple environments

Das Verwalten der Genehmigungen für Releases wurde vereinfacht.Managing approvals with releases is now simpler. Bei Pipelines, deren parallel bereitgestellte Umgebungen von derselben Person genehmigt werden müssen, muss die genehmigende Person auf jede Genehmigung einzeln reagieren.For pipelines having the same approver for multiple environments that deploy in parallel, the approver currently needs to act on each of the approvals separately. Mit diesem Feature können Sie nun mehrere ausstehende Genehmigungen gleichzeitig abschließen.With this feature, you can now complete multiple pending approvals at the same time.

Genehmigen mehrerer Umgebungenapprove multiple environments

Erweiterbarkeit von ReleasevorlagenRelease template extensibility

Mit Releasevorlagen können Sie eine Baseline erstellen, die Ihnen den Einstieg in das Definieren des Releaseprozesses erleichtert.Release templates let you create a baseline for you to get started when defining a release process. Vor diesem Update konnten Sie neue Vorlagen in Ihrem Konto hochladen. Jetzt können Autoren Releasevorlagen auch in Ihre Erweiterungen einbeziehen.Previously, you could upload new ones to your account, but now authors can include release templates in their extensions. Ein Beispiel dafür finden Sie im GitHub-Repository.You can find an example on the GitHub repo.

Bedingt Releasetasks und -phasenConditional release tasks and phases

Ähnlich wie bedingte Buildtasks können Sie jetzt auch einen Task oder eine Phase nur dann ausführen, wenn bestimmte Bedingungen erfüllt werden.Similar to conditional build tasks, you can now run a task or phase only if specific conditions are met. Dies hilft Ihnen beim Entwerfen von Rollbackszenarios.This will help you in modeling rollback scenarios.

Wenn die integrierten Bedingungen Ihre Bedürfnisse nicht erfüllen, oder wenn Sie präzisere Steuerungsmöglichkeiten über den Zeitpunkt der Ausführung des Tasks oder der Phase benötigen, können Sie benutzerdefinierte Bedingungen definieren.If the built-in conditions do not meet your needs, or if you need more fine-grained control over when the task or phase runs, you can specify custom conditions. Geben Sie die Bedingungen als geschachtelte Funktionen an.Express the condition as a nested set of functions. Der Agent beginnt bei der Auswertung mit der innersten Funktion und arbeitet sich dann nach außen vor.The agent evaluates the innermost function and works its way outward. Das Endergebnis ist ein Boolescher Wert, der bestimmt, ob der Task ausgeführt werden soll.The final result is a Boolean value that determines if the task is to be run.

Bedingte Releasephasenconditional release phases

Anforderungsverlauf für DienstendpunkteRequests history for service endpoints

Dienstendpunkte ermöglichen die Verbindung mit externen und Remotediensten zum Ausführen von Tasks für einen Build oder eine Bereitstellung.Service endpoints enable connection to external and remote services to execute tasks for a build or deployment. Die Endpunkte werden im Projektumfang konfiguriert und für mehrere Build- und Releasedefinitionen freigegeben.The endpoints are configured in project scope and shared between multiple build and release definitions. Dienstendpunktbesitzer können jetzt eine konsolidierte Ansicht von Builds und Bereitstellungen mit Endpunkten abrufen, sodass die Überwachung und Governance verbessert werden kann.Service endpoint owners can now get a consolidated view of builds and deployments using an endpoint, that can help to improve auditing and governance.

EndpunktabfrageverlaufEndpoint requests history

Standardeigenschaften für Git- und GitHub-Artefakttypen können jetzt bearbeitet werdenDefault properties for Git and GitHub artifact types are now editable

Sie können jetzt die Standardeinstellungen von Git- und GitHub-Artefakttypen auch nach der Verknüpfung des Artefakts bearbeiten.You can now edit the default properties of Git and GitHub artifact types even after the artifact has been linked. Das ist besonders praktisch in Szenarios, in denen der Branch der stabilen Version des Artefakts geändert wurde und dieser Branch in kommenden Continuous Delivery-Releases verwendet werden soll, um neuere Versionen des Artefakts abzurufen.This is particularly useful in scenarios where the branch for the stable version of the artifact has changed, and future continuous delivery releases should use this branch to obtain newer versions of the artifact.

Bearbeiten von ArtefakteigenschaftenEditable artifact properties

Manuelle Massenbereitstellung von Umgebungen über die ReleaseansichtBulk deploy environments manually from release view

Sie können jetzt einen Bereitstellungsvorgang in mehreren Umgebungen eines Releases gleichzeitig auslösen.You can now manually trigger a Deploy action to multiple environments of a release at the same time. So können Sie mehrere Umgebungen in einem Release, bei denen Konfigurationen oder Bereitstellungen fehlgeschlagen sind, auswählen und die erneute Bereitstellung in mehreren Umgebungen gleichzeitig durchführen.This allows you to select multiple environments in a release with failed configurations or deployments, and re-deploy to all of the environments in one operation.

MassenbereitstellungBulk deploy

Jetzt können Sie Jenkins-Projekte noch besser einsetzen.Consuming projects from Jenkins just got even better.

Sie können jetzt Jenkins-Pipelineprojekte mit mehreren Branches als Artefaktquellen in Releasedefinitionen verwenden.First, you can now consume Jenkins multi-branch pipeline projects as artifact sources in a release definition.

Darüber hinaus können Jenkins-Projekte jetzt verwendet werden, wenn Sie auf Ordnerebene organisiert sind (in der Vergangenheit konnten Sie Jenkins-Projekte nur vom Stammordner eines Jenkins-Servers aus als Artefakte verknüpfen).Second, while previously you could link Jenkins projects as artifacts only from the root folder of a Jenkins server, now Jenkins projects can be consumed when organized at folder level. Die Liste der Jenkins-Projekte wird neben den Ordnerpfaden in der Liste der Quellen angezeigt, aus der Sie das Projekt auswählen, dass als Artefaktquelle fungieren soll.You see the list of Jenkins projects, along with folder paths, in the list of sources from which you select the project to be consumed as artifact source.

Jenkins-OrdnerebeneJenkins folder level

Docker Hub oder Azure Container Registry als ArtefaktquelleDocker Hub or Azure Container Registry as an artifact source

Durch dieses Feature können Releases Images verwenden, die in einer Docker Hub-Registrierung oder in Azure Container Registry (ACR) gespeichert sind.This feature enables releases to use images stored in a Docker Hub registry or an Azure Container Registry (ACR). Dies ist der erste Schritt auf dem Weg zur Unterstützung von Szenarios wie dem Rollout von Änderungen nach Region mithilfe von Georeplikationsfeatures von ACR oder das Bereitstellen in einer Umgebung (z.B. einer Produktionsumgebung) von einer Containerregistrierung aus, die nur Images für die Produktionsumgebung enthält.This is a first step towards supporting scenarios such as rolling out new changes region-by-region by using the geo-replication feature of ACR or deploying to an environment (such as production) from a container registry that has images for only the production environment.

Sie können jetzt Docker Hub oder ACR als Artefakte über + Hinzufügen unter „Artefakte“ in einer Releasedefinition hinzufügen.You can now configure Docker Hub or ACR as a first-class artifact in the + Add artifact experience of a release definition. Aktuell muss das Release noch manuell oder von einem anderen Artefakt ausgelöst werden. Wir arbeiten im Moment an einem Trigger, der auf einem Push eines neuen Images an die Registrierung basiert.For now the release has to be triggered manually or by another artifact but we look forward to adding a trigger based on the push of a new image to the registry soon.

Docker Hub-ArtefaktquelleDockerhub artifact source

StandardartefaktversionenDefault artifact versions

Es gibt jetzt mehrere Standardversionsoptionen beim Verknüpfen eines Versionskontrollartefakts mit einer Releasedefinition.There are now several default version options when linking version control artifacts to a release definition. Sie können einen bestimmten Commit oder ein bestimmtes Changeset konfigurieren oder festlegen, dass die aktuelle Version aus dem Standardbranch ausgewählt wird.You can configure a specific commit/changeset or simply configure the latest version to be picked from the default branch. Normalerweise legen Sie fest, dass die aktuelle Version ausgewählt wird, aber diese Funktion ist besonders in Umgebungen praktisch, in denen eine goldene Artefaktversion für alle kommenden Continuous Deployments angegeben werden muss.Normally you configure it to pick up the latest version, but this is especially useful in some environments where a golden artifact version needs to be specified for all future continuous deployments.

StandardartefaktversionenDefault artifact versions

Verbesserungen bei ReleasetriggerbranchesRelease triggers branch enhancements

Sie können jetzt einen Releasetriggerfilter auf Grundlage des Standardbranchs in der Builddefinition konfigurieren.You can now configure a release trigger filter based on the default branch specified in the build definition. Dies ist besonders praktisch, wenn Ihr Standardbuildbranch sich mit jedem Sprint ändert und die Releasetriggerfilter für alle Releasedefinitionen aktualisiert werden müssen.This is particularly helpful if your default build branch changes every sprint and the release trigger filters needs to be updated across all the release definitions. Jetzt müssen Sie nur noch den Standardbranch einer Builddefinition ändern, und dann verwenden alle Releasedefinitionen automatisch diesen Branch.Now you just need to change the default branch in the build definition and all the release definitions automatically use this branch. Wenn Ihr Team z.B. Releasebranches für jede Sprintreleasenutzlast erstellt, können Sie diese in der Builddefinition aktualisieren, sodass sie auf einen neuen Sprintreleasebranch zeigt. Das Release übernimmt diese anschließend automatisch.For example, if your team is creating release branches for each sprint release payload, you update it in the build definition to point to a new sprint release branch and the release picks this up automatically.

ReleasetriggerRelease triggers

Releasetrigger für ein PaketverwaltungsartefaktRelease trigger for a package management artifact

Sie können jetzt einen Trigger in dem Artefakt Paketverwaltung in der Releasedefinition festlegen, sodass ein neues Release automatisch erstellt wird, wenn eine neue Version des Pakets veröffentlicht wurde.Now you can set a trigger on a Package Management artifact in a Release definition so that a new release is automatically created when a new version of the package has been published. Weitere Informationen finden Sie in der Dokumentation zu Triggern in der Releaseverwaltung.See the documentation for triggers in Release Management for more information.

Festlegen einer Variablengruppe für bestimmte BereicheScope a variable group to specific environments

Vor diesem Update waren die Variablen, die eine Variablengruppe zum Zeitpunkt des Hinzufügens zu einer Releasedefinition enthalten hat, für alle Umgebungen im Release verfügbar.Previously, when a variable group was added to a release definition, the variables it contained were available to all the environments in the release. Sie verfügen jetzt über die nötige Flexibilität, um Variablengruppen stattdessen auf bestimmte Umgebungen auszurichten.Now, you have the flexibility to scope the variable groups to specific environment(s) instead. Dadurch stehen sie ausschließlich einer Umgebung des jeweiligen Releases zur Verfügung.This makes them available to one environment but not other environments of the same release. Dies ist besonders bei externen Diensten wie z.B. einem SMTP-E-Mail-Dienst nützlich, die sich von Umgebung zu Umgebung unterscheiden.This is great when you have an external service, such as an SMTP email service, which is different between environments.

Variablengruppe verknüpfenLink variable group

Automatische Veröffentlichung über Azure Container Registry oder Docker HubRelease automatically from Azure Container Registry and Docker Hub

Beim Bereitstellen von containerisierten Apps wird das Containerimage zunächst per Push an eine Containerregistrierung übermittelt.When deploying containerized apps, the container image is first pushed to a container registry. Danach kann das Containerimage in einer Web-App für Container oder in einem Kubernetes-Cluster bereitgestellt werden.After the push is complete, the container image can be deployed to a Web App for Containers or a Kubernetes cluster. Sie können jetzt das automatische Erstellen von Releases bei Updates des in Docker Hub oder Azure Container Registry gespeicherten Images aktivieren, indem Sie diese als Artefaktquelle hinzufügen.You can now enable automatic creation of releases on updates to the images stored in Docker Hub or Azure Container Registry by adding them as an artifact source.

Azure Container Registry als QuelleAzure Container Registry as a source

Angeben einer Standardversion von Jenkins-ArtefaktenSpecify a default version for Jenkins artifacts

Wenn ein Release mit mehreren Artefakten automatisch ausgelöst wird, werden die in der Releasedefinition gespeicherten Standardversionen für alle Artefakte verwendet.When a release with multiple artifacts is auto-triggered, default versions saved in the release definition are picked up for all artifacts. Vor diesem Update hatten Jenkins-Artefakte keine Einstellung für die Standardversion, sodass Sie auch keinen Continuous Deployment-Trigger für ein Release mit Jenkins als sekundärem Artefakt festlegen konnten.Previously, Jenkins artifacts did not have a default version setting, and so you couldn't set a continuous deployment trigger on a release using Jenkins as the secondary artifact.

Jetzt können Sie eine Standardversion für Jenkins-Artefakte mit Ihnen bereits bekannten Optionen erstellen:Now, you can specify a default version for Jenkins artifacts, with the options you are familiar with:

  • LatestLatest
  • Zum Zeitpunkt der Releaseerstellung angebenSpecify at the time of release creation
  • Bestimmte VersionSpecific version

Standardversion von Jenkins-ArtefaktenDefault version for Jenkins artifacts

Beisteuern von Releasegates von Erweiterungen ausContribute release gates from extensions

Releasegates ermöglichen das Hinzufügen von informationsgesteuerten Genehmigungen zu Releasepipelines.Release gates enable addition of information driven approvals to the release pipelines. Vor oder nach der Bereitstellung werden mehrere Integritätssignale erfasst, um zu bestimmen, ob das Release auf die nächste Stufe hoch gestuft werden soll.A set of health signals are collected repeatedly prior to or post deployment, to determine whether the release should be promoted to the next stage or not. Es werden mehrere integrierte Gates zur Verfügung gestellt. Bis jetzt wurde „Invoke Azure function“ (Azure-Funktion aufrufen) als Integrationsmöglichkeit mit anderen Diensten empfohlen.A set of built-in gates are provided, and "Invoke Azure function" has so far been recommended as a means to integrate with other services. Jetzt ist es noch einfacher, andere Dienste zu integrieren und Gates über die Marketplace-Erweiterung hinzuzufügen.We now simplify the route to integrate with other services and add gates through marketplace extensions. Sie können jetzt benutzerdefinierte Gatetasks beisteuern und Releasedefinitionsautoren einen verbesserten Prozess zur Gatekonfiguration bieten.You can now contribute custom gate tasks and provide release definition authors an enhanced experience to configure the gate.

Weitere Informationen finden Sie im Artikel zum Erstellen von Gatetasks.Learn more about authoring gate tasks.

Skalierbare Bereitstellungen für virtuelle Computer mit BereitstellungsgruppenScale deployments to Virtual Machines using Deployment Groups

Bereitstellungsgruppen, die robuste und sofort verfügbare Bereitstellung auf mehreren Computern bieten, sind jetzt allgemein verfügbar.Deployment Groups, that gives robust, out-of-the-box multi-machine deployment, is now generally available. Mit Bereitstellungsgruppen können Sie Bereitstellungen auf mehreren Servern orchestrieren und gleitende Updates durchführen, während Sie die Hochverfügbarkeit Ihrer Anwendung gewährleisten.With Deployment Groups, you can orchestrate deployments across multiple servers and perform rolling updates, while ensuring high availability of your application throughout. Sie können auch lokal auf Servern oder virtuellen Computern in Azure oder einer beliebigen Cloud bereitstellen und verfügen zusätzlich über End-to-End-Rückverfolgbarkeit bereitgestellter Artefaktversionen auf Serverebene.You can also deploy to servers on-premises or virtual machines on Azure or any cloud and have end-to-end traceability of deployed artifact versions down to the server level.

Die agentbasierte Bereitstellungsfunktion basiert auf denselben Build- und Bereitstellungs-Agenten, die bereits verfügbar sind.The agent-based deployment capability relies on the same build and deployment agents that are already available. Sie können den vollständigen Aufgabenkatalog auf Ihren Zielcomputern in der Bereitstellungsgruppenphase verwenden.You can use the full task catalog on your target machines in the Deployment Group phase. Aus Sicht der Erweiterbarkeit können Sie auch die REST-APIs für Bereitstellungsgruppen und Ziele für den programmgesteuerten Zugriff verwenden.From an extensibility perspective, you can also use the REST APIs for deployment groups and targets for programmatic access.

PackagePackage

Nahtloses Verwenden öffentlicher Pakete mit UpstreamquellenSeamlessly use public packages using upstream sources

Jetzt sind Upstreamquellen für nuget.org und npmjs.com verfügbar.Upstream sources for nuget.org and npmjs.com are now available. Dadurch können Sie u.a. Pakete aus Upstreamquellen verwalten, als veraltet markieren, löschen, ihre Veröffentlichung zurückziehen und ihre Auflistung aufheben sowie jedes von Ihnen verwendete Upstreampaket speichern.Benefits include the ability to manage (unlist, deprecate, unpublish, delete, etc.) packages saved from upstream sources as well as guaranteed saving of every upstream package you use.

npmjs Upstreamnpmjs upstream

Beibehaltungsrichtlinien in TFS-FeedsRetention policies in TFS feeds

Bis jetzt gab es in TFS-Paketfeeds keine Möglichkeit, ältere, nicht verwendete Paketversionen zu bereinigen.Until now, TFS package feeds have not provided any way to automatically clean up older, unused package versions. Für Benutzer, die häufig Pakete veröffentlichen, konnte dies zu langsameren Feedabfragen im NuGet-Paket-Manager und in anderen Clients führen, bis einige Versionen manuell gelöscht wurden.For frequent package publishers, this could result in slower feed queries in the NuGet Package Manager and other clients until some versions were manually deleted.

Wir haben Beibehaltungsrichtlinien in TFS-Feeds hinzugefügt.We have now enabled retention policies on TFS feeds. Beibehaltungsrichtlinien löschen automatisch die älteste Version eines Pakets, wenn der Schwellenwert für die Vermerkdauer erreicht wurde.Retention policies automatically delete the oldest version of a package once the retention threshold is met. Pakete, die auf Ansichten hoch gestuft wurden, werden unbegrenzt beibehalten, sodass Sie Versionen schützen können, die in der Produktion verwendet werden oder in Ihrem Unternehmen weit verbreitet sind.Packages promoted to views are retained indefinitely, giving you the ability to protect versions that are used in production or used widely across your organization.

Bearbeiten Sie zum Aktivieren von Beibehaltungsrichtlinien Ihren Feed, und geben Sie einen Wert unter Maximale Anzahl von Versionen pro Paket im Bereich Beibehaltungsrichtlinien ein.To enable retention policies, edit your feed and enter a value in the Maximum number of versions per package in the Retention policies section.

Beibehaltungretention

Filter in der PaketverwaltungFiltering in package management

Der Bereich Pakete wurde aktualisiert und verfügt jetzt über unser Standardseitenlayout, Befehlsleisten-Steuerelemente und die neue Standardfilterleiste.The Packages page has been updated to use our standard page layout, command bar control, and the new standard filter bar.

Paketbenutzeroberfläche FilterleistePackage UX unified filter bar

Teilen von Paketen mithilfe eines BadgesShare your packages using a badge

In der Open-Source-Community ist es üblich, einen Badge zu verwenden, der eine Verknüpfung mit der aktuellen Version eines Pakets in der Infodatei Ihres Repositorys herstellt.In the open source community, it is common to use a badge that links to the latest version of your package in your repository's README. Jetzt können sie Badges für Pakete in Ihrem Feed erstellen.You can now create badges for packages in your feeds. Aktivieren Sie die Option Enable Package Badges (Paketbadges aktivieren) in den Feedeinstellungen, wählen Sie ein Paket aus, und klicken Sie auf Create badge (Badge erstellen).Just check the Enable package badges option in feed settings, select a package and then click Create badge. Sie können die Badge-URL direkt kopieren oder ein vorgeneriertes Markdown kopieren, das den Badge mit der Detailsseite Ihres Pakets verknüpft.You can copy the badge URL directly or copy pre-generated Markdown that links the badge back to your package's details page.

Erstellen eines PaketbadgesCreate a package badge

Vorherige Paketversionen haben jetzt ihre eigene SeitePrevious package versions are now a full-page list

Wir haben viel Feedback zur aktualisierten Paketverwaltung erhalten, bei der die Liste der vorherigen Paketversionen in eine Breadcrumb-Leiste auf der Detailseite des Pakets verschoben wurde.We received a lot of feedback on the updated Package Management experience, where we moved the list of previous package versions into a breadcrumb picker on the package details page. Wir haben den neuen Reiter Versions (Versionen) hinzugefügt, über den Sie mehr Informationen zu vorherigen Versionen erhalten und die Versionsnummern leichter kopieren und einen Link zu einer älteren Version abrufen können.We have added a new Versions pivot that brings more information about prior versions and makes it easier to copy the version number or get a link to an old version.

VersionslisteVersions list

Anzeigen der Qualität einer Paketversion in der PaketlisteView quality of a package version in the package list

In der Paketliste sehen Sie nun die Ansicht oder die Ansichten jeder Paketversion, um schnell ihre Qualität einschätzen zu können.On the package list, you can now see the view(s) of each package version to quickly determine their quality. In der Dokumentation zu Releaseansichten finden SieSee the release views documentation for more information. weitere Informationen.) documentation for more information.

Ansichten in der PaketlisteViews in package list

Gulp, Yarn und andere authentifizierte FeedunterstützungGulp, Yarn, and more authenticated feed support

Nach diesem Update funktioniert der npm-Task problemlos mit authentifizierten npm-Feeds (in der Paketverwaltung oder in externen Registrierungen wie npm Enterprise und Artifactory). Vor diesem Update war es eine Herausforderung, ein Aufgabenausführungstool wie Gulp oder einen alternativen npm-Client wie Yarn zu verwenden, wenn der Task keine authentifizierten Feeds unterstützt hat.The npm task today works seamlessly with authenticated npm feeds (in Package Management or external registries like npm Enterprise and Artifactory), but until now it has been challenging to use a task runner like Gulp or an alternate npm client like Yarn unless that task also supported authenticated feeds. Wir haben den neuen Buildtask npm Authenticate hinzugefügt, der Ihrer NPMRC-Datei Anmeldeinformationen hinzufügt, sodass Tasks authentifizierte Feeds erfolgreich verwenden können.We have added a new npm Authenticate build task that adds credentials to your .npmrc so that subsequent tasks can use authenticated feeds successfully.

Authentifizierte FeedsAuth feeds

Die Standardberechtigungen des Paketfeeds enthalten jetzt die Gruppe ProjektadministratorenPackage feed default permissions now include Project Administrators

In der Vergangenheit wurde der Ersteller eines Feeds als einziger Feedbesitzer festgelegt. Wenn dieser Benutzer nun das Team gewechselt oder die Organisation verlassen hat, konnte dies zu Schwierigkeiten bei der Verwaltung in großen Unternehmen führen.In the past, creating a feed sets the creating user as the only feed owner, which can cause administration challenges in large organizations if that user switches teams or leaves the organization. Um diesen Single Point of Failure zu umgehen, wird beim Erstellen eines Feeds der aktuelle Projektkontext eines Benutzers verwendet, um die Gruppe Projektadministratoren abzurufen und sie auch zum Besitzer des Feeds zu machen.To remove this single point of failure, creating a feed now uses the user's current project context to get the Project Administrators group and make it an owner of the feed as well. Genauso wie mit jeder anderen Berechtigung können Sie die Gruppe entfernen und die Feedberechtigungen über die Feedeinstellungen anpassen.As with any permission, you can remove this group and further customize feed permissions using the feed settings dialog.

Wiederverwenden und Wiederherstellen von PaketenRecycle and restore packages

Das Löschen nicht verwendeter Pakete hält die Paketliste übersichtlich. Manchmal werden Pakete jedoch versehentlich gelöscht.Deleting unused packages can help keep the package list clean but sometimes it can be done by mistake. Jetzt können Sie gelöschte Pakete aus dem Papierkorb wiederherstellen.Now you can restore deleted packages from the Recycle Bin. Gelöschte Pakete werden 30 Tage lang im Papierkorb aufbewahrt, sodass Sie genügend Zeit für eine Wiederherstellung haben.Deleted packages are retained in the Recycle Bin for 30 days, giving you ample time to restore if you need to.

Paket PapierkorbPackage recycle bin

Zwar war es bisher möglich, die URL eines Pakets über den Hub Pakete zu teilen, aber dies war häufig schwierig, da Sie ein Projekt in die URL einbeziehen mussten, was nicht für jeden möglich war, der den Link verwendet hat.Although you could share the URL to a package found in the Packages hub in the past, it was often difficult to use because you needed to include a project in the URL, that may or may not apply to those using the link. Durch dieses Update können Sie jetzt Pakete mit einer URL teilen, die automatisch ein Projekt auswählt, auf das der Empfänger zugreifen kann.With this Update, you can now share packages using a URL that automatically select a project the recipient has access to.

Die URL-Formatzeichenfolge lautet `https://<TFSserverURL>/_packaging?feed=<feed>&package=<package>&version=<version>&protocolType=<NuGet|Npm|Maven>&_a=package` The URL format is: `https://<TFSserverURL>/_packaging?feed=<feed>&package=<package>&version=<version>&protocolType=<NuGet|Npm|Maven>&_a=package`

Alle Parameter außer `<TFSserverURL>` sind optional. Wenn Sie ein Paket angeben, müssen Sie allerdings auch den Protokolltyp angeben.All parameters except `<TFSserverURL>` are optional, but if you provide a package, you must provide the protocol type.

TestTest

Der Visual Studio Test-Task erfordert keine Vollversion von Visual Studio Visual Studio Test task does not need full Visual Studio

Der Task Visual Studio Test in Build/Release erfordert zum Ausführen von Tests Visual Studio auf dem Agent.The Visual Studio Test task in build/release requires Visual Studio on the agent to run tests. Statt Visual Studio zum Ausführen von Tests in Produktionsumgebungen oder zum Verteilen von Tests auf mehreren Agents zu installieren, verwenden Sie den neuen Task Installer für die Visual Studio Test-Platform.Rather than installing Visual Studio to run tests in production environments or for merely distributing tests over multiple agents, use the new Visual Studio Test Platform Installer task. Dieser Task ruft die Testplattform von nuget.org ab und fügt sie zum Toolscache hinzu.This task acquires the test platform from nuget.org and adds it to the tools cache. Der Installertask erfüllt die VSTest-Anforderung, und ein nachfolgender Visual Studio Test-Task in der Definition kann ausgeführt werden, ohne dass eine Vollversion von Visual Studio auf dem Agent installiert werden muss.The installer task satisfies the vstest demand and a subsequent Visual Studio Test task in the definition can run without needing a full Visual Studio install on the agent.

Fügen Sie den Installertask über den Taskkatalog ihrer Definition hinzu.From the task catalog, add the installer task in your definition.

Platform-InstallertaskPlatform Installer task

Konfigurieren Sie den nachfolgenden Task Visual Studio Test so, dass er die vom Installer installierten Komponenten verwendet.Configure the subsequent Visual Studio Test task to use the bits acquired through the installer.

Version der TestplattformTest platform version

Hinweis

Einschränkungen: Das Test Platform-Paket von NuGet unterstützt aktuell noch nicht das Ausführen von Tests der programmierten Benutzeroberfläche.Limitations: The Test Platform package on NuGet currently does not support running Coded UI test. Das Unterstützen von Tests der programmierten UI wurde hinten angestellt.Enabling support for Coded UI test is on the backlog. Das Test Platform-Paket von NuGet ist plattformübergreifend, der VSTest-Task unterstützt aktuell jedoch noch nicht die Ausführung von .NET Core-Tests.The Test Platform package on NuGet is cross-platform, but VSTest task currently does not support running .NET core tests. Verwenden Sie zum Ausführen von .NET Core-Tests den „dot net“-Task.To run .NET core tests, use the 'dot net' task.

Die Aufgaben „Run Functional Tests“ und „Deploy Test Agent“ sind jetzt veraltetRun Functional Tests and Deploy Test Agent tasks are now deprecated

Letztes Jahr haben wir mit der Vereinheitlichung von Agents in Builds, Releases und Tests begonnen.Last year, we started on the journey to unify agents across build, release, and test. Dadurch sollte auf mehrere Problemfelder in Verbindung mit WinRM-basierten Deploy Test Agent- und Run Functional Tests-Aufgaben (Bereitstellen von Test-Agents und Ausführen von Funktionstests) eingegangen werden.This was intended to address various pain points associated with using WinRM based Deploy Test Agent and Run Functional Tests tasks. Zudem können Sie den Visual Studio Test-Task (VSTest) für alle Ausgaben rund um Tests verwenden, u.a. die folgenden:It also enables you to use the Visual Studio Test (VSTest) task for all your testing needs, including:

  • KomponententestsUnit tests
  • Funktionstests (für die Benutzeroberfläche und Nicht-Benutzeroberfläche)Functional (UI/non-UI) tests
  • MSTest-basierte TestsMSTest based tests
  • Tests, die auf Drittanbieterframeworks basierenThird party framework-based tests
  • Assemblybasierte Testspezifikation oder das Ausführen von Tests mit Testplan/TestsammlungAssembly-based test specification or running tests with Test Plan/Test Suite
  • das Ausführen eines einzelnen Agent-Tests sowie das Verteilen von Tests auf mehreren AgentsSingle agent test execution as well as distributing tests over multiple agents

Durch den Ansatz zum Vereinheitlichen von Agents können Administratoren alle Computer, die für CI/CD verwendet werden, einheitlich verwalten.The unified agents approach also allows administrators to manage all machines that are used for CI/CD in a uniform manner.

Visual Studio-TesttaskVisual Studio Test task

Für diese Funktion wurden einige andere wichtige Änderungen vorgenommen, u.a. die folgenden:We have delivered several crucial pieces to enable this capability, including:

Durch diese Änderungen können diese beiden Tasks jetzt als veraltet markiert werden.With all the above now in place, we are ready to deprecate these two tasks. Vorhandene Definitionen, die diese Tasks verwenden, funktionieren auch weiterhin. Es wird empfohlen, ab jetzt den VSTest-Task zu verwenden, der mit der Zeit weiter verbessert wird.While existing definitions that use the deprecated tasks will continue to work, we encourage you to move to using VSTest to take advantage of continued enhancement over time.

Filtern von großen TestergebnissenFilter large test results

Mit der Zeit sammeln sich Testobjekte an, was dazu führen kann, dass große Anwendungen auf tausende von Tests anwachsen können.Over time test assets accrue, and large applications can easily grow to thousands of tests. In Teams ist es wichtig, leicht durch große Mengen an Testergebnissen navigieren zu können, um beim Identifizieren von Testfehlern, den Grundursachen oder dem Zuweisen von Verantwortung für Probleme effizient arbeiten zu können.Teams are looking for better ways to navigate through large sets of test results to be productive while identifying test failures, associated root cause, or ownership of issues. Dazu haben wir drei neue Filter auf der Registerkarte Tests in Build und Release hinzugefügt: Testname, Container (DLLS) und Besitzer (Containerbesitzer).To enable this, we have added three new filters under Tests Tab in Build and Release as Test Name, Container (DLLs) and Owner (Container Owner).

Test nach Testnamen filternFilter test by test name

Darüber hinaus bietet der vorhandene Filter Ergebnis jetzt die Möglichkeit, mehrere Ergebnisse zu filtern.Additionally, the existing Outcome filter now provides the ability to filter for multiple outcomes. Die verschiedenen Filterkriterien sind ihrem Wesen nach kumulativ.The various filter criterion are cumulative in nature. Wenn ein Benutzer das Ergebnis seiner Tests nach einer Änderung anzeigen möchte, für die er gerade ein Commit ausgeführt hat, kann er nach Container (DLL-Name), Besitzer (DLL-Besitzer) oder Testname bzw. allen filtern, um die relevanten Ergebnisse zu erhalten.As a user, when I want to see the outcome of my tests for a change I just committed, I can filter on the Container (DLL name), Owner (DLL owner), Test Name, or all of them, to get to the results relevant to me.

Filtern des TestergebnissesFilter test outcome

Identifizieren unzuverlässiger TestsIdentify flaky tests

Manchmal sind Tests unzuverlässig – sie schlagen bei einer Ausführen fehl und werden bei der nächsten erfolgreich abgeschlossen, ohne dass Änderungen vorgenommen wurden.Sometimes tests are flaky - they fail on one run and pass on another without any changes. Unzuverlässige Tests können frustrierend sein und das Vertrauen in die Effektivität negativ beeinflussen, sodass Fehler ignoriert und übersehen werden.Flaky tests can be frustrating and undermines confidence in test effectiveness - causing failures to be ignored and bugs to slip through. Mit diesem Update haben wir den ersten Bestandteil für die Lösung des Problems mit unzuverlässigen Tests bereitgestellt.With this Update, we have deployed the first piece of a solution to help tackle the problem of flaky tests. Sie können jetzt festlegen, dass der Visual Studio Test-Task fehlgeschlagene Tests erneut ausführt.You can now configure the Visual Studio Test task to re-run failed tests. Die Testergebnisse geben dann an, welche Tests zunächst fehlgeschlagen sind und dann erfolgreich abgeschlossen wurden, als sie erneut ausgeführt wurden.The test results then indicate which tests initially failed and then passed on re-run. Unterstützung für das erneute Ausführen von datengesteuerten Tests und Testreihen wird auch bald hinzugefügt.Support for re-run of data driven and ordered tests are coming later.

Der Visual Studio Test-Task kann so konfiguriert werden, dass er die Höchstzahl an erneuten Ausführungen von fehlgeschlagenen Tests und einen Schwellenwert in Prozent für fehlgeschlagene Tests (d.h., dass Tests z.B. nur erneut ausgeführt werden, wenn weniger als 20 % aller Tests fehlgeschlagen sind) angibt, um das erneute Ausführen von Tests bei einem hohen Anteil an fehlgeschlagenen Tests zu verhindern.The Visual Studio Test task can be configured to control the maximum number of attempts to re-run failed tests and a threshold percentage for failures (e.g. only re-run tests if less than 20% of all tests failed) to avoid re-running tests in event of wide spread failures.

Abschnitt zum erneuten Ausführen fehlgeschlagener TestsRe-run failed test section

Sie können auf der Registerkarte Tests unter Build und Release nach Testergebnissen mit dem Ergebnis „Passed on rerun“ (Bei der zweiten Ausführung erfolgreich) filtern, um die Tests zu bestimmen, die unzuverlässig waren.In the Tests tab under Build and Release, you can filter the test results with Outcome as "Passed on rerun" to identify the tests that had an unreliable behavior during the run. Dies zeigt aktuell den letzten Versuch eines Tests, der beim erneuten Ausführen erfolgreich war.This currently shows the last attempt for each test that passed on re-run. Die Ansicht „Summary“ (Zusammenfassung) wurde angepasst und zeigt jetzt „Passed on rerun (n/m)“ (Bei der zweiten Ausführung erfolgreich) unter „Total tests“ (Test gesamt) an, wobei n die Zahl an erfolgreichen Tests bei der erneuten Ausführung ist und m die Zahl aller erfolgreichen Tests.The Summary view is also modified to show "Passed on rerun (n/m)" under Total tests, where n is the count of tests passed on re-run and m is total passed tests. In den nächsten Sprints wird auch eine Hierarchieansicht aller Versuche hinzugefügt.A hierarchical view of all attempts is coming in next few sprints.

Erneutes Ausführen fehlgeschlagener TestsRe-run failed test results

Vorschauverbesserungen und Unterstützung für unterschiedliche Protokolltypen, die vom Visual Studio Test-Task erzeugt werdenPreview improvements and support for different log types generated by Visual Studio Test task

Wir haben den VSTest-Task verbessert, sodass er Protokolle veröffentlicht, die von unterschiedlichen Protokollanweisungen generiert werden, die der Standardausgabe und den Standardfehlern fehlgeschlagener Tests entsprechen.We enhanced the VSTest task to publish logs generated by different kind of logging statements corresponding to standard output and standard error for failed tests. Wir haben außerdem die Qualität der Vorschau verbessert, sodass sie jetzt das Anzeigen von Text- und Protokolldateiformaten unterstützt. Darüber hinaus gibt es Funktionen zum Durchsuchen der Protokolldateien.We have also improved the preview experience to support viewing text and log file formats, with capability to search in the log files.

WikiWiki

Sie können nach Ihren beliebtesten Wiki-Seiten mithilfe des Titels oder des Inhalts sowie mithilfe von Code oder Arbeitselementen suchen.You can search for your favorite Wiki pages by title or content right alongside code and work items. Weitere Informationen zur Wiki-Suche erhalten Sie auf dem DevOps-Blog von Microsoft.You can read more about Wiki search in the Microsoft DevOps Blog.

Die Wiki kann für unterschiedliche Inhalte verwendet werden.Wiki can be used for a variety of content. Manchmal kann es praktisch ein, Inhalt aus der Wiki auszudrucken, um sich in der Freizeit weiter zu informieren, um per Hand Notizen und Anmerkungen zu machen, oder um Personen, die nicht an Ihrem VSTS-Projekt beteiligt sind, eine ausgedruckte Version zur Verfügung zu stellen.Sometimes it can be useful to print content from Wiki to read in your spare time, add comments using pen and paper, or even share an offline PDF copy with those outside of your VSTS project. Öffnen Sie dazu einfach das Kontextmenü einer Seite, und klicken Sie dann auf Seite drucken.Now, simply click on the context menu of a page and select Print page. Dieses Feature hat aufgrund eines Vorschlags Priorität erhalten.This feature was prioritized based on a suggestion.

Wiki-Menü, Option „Seite drucken“Wiki menu print page option

Hinweis

Dieses Feature wird aktuell nicht in Firefox unterstützt.Currently this feature is not supported on Firefox.

Mitwirken an Wiki-Seiten durch Verwenden von TastenkombinationenContribute to Wiki pages with ease using keyboard shortcuts

Jetzt können Sie Tastenkombinationen verwenden, um gängige Aktionen zum Bearbeiten und Anzeigen in der Wiki durchzuführen. Dafür benötigen Sie nur Ihre Tastatur.You can now use shortcuts to perform common edit and view actions in Wiki even faster using only your keyboard.

Wenn Sie sich auf einer Seite befinden, können Sie eine Unterseite hinzufügen, bearbeiten oder erstellen. Dazu können Sie die folgenden Kombinationen verwenden:While viewing a page, you can add, edit, or create a subpage, for example:

Wiki-Ansicht, Pop-Up mit TastenkombinationenWiki view keyboard shortcuts popup

Wenn Sie eine Seite bearbeiten, können Sie diese ganz schnell speichern, speichern und schließen oder einfach nur schließen.While editing a page, you can quickly save, save and close, or just close.

Wiki bearbeiten, Pop-Up mit TastenkombinationenWiki edit keyboard shortcuts popup

Diese Kombinationen stehen zusätzlich zu den Standardtastenkombinationen zum Bearbeiten zur Verfügung (wie STRG+B für fett, STRG+I für kursiv, STRG+K fürs Verknüpfen usw.). Weitere Informationen finden Sie in der Liste aller Tastenkombinationen.These are in addition to standard editing shortcuts such as Ctrl+B for bold, Ctrl+I for italics, Ctrl+K for linking etc. See the full list of keyboard shortcuts for more information.

Rendern von umfangreichem Markdown in CoderepositorymarkdownRich markdown rendering in code repo markdown

Sie können jetzt umfangreiche README.MD-Dateien in den Code-Repositorys erstellen.You can now create rich README.MD files in the code repositories. Das Markdownrendering von MD-Dateien in Coderepositorys unterstützt jetzt HTML-Tags, Blockzitate, Emojis, Größenänderung von Bildern und mathematische Formeln.The markdown rendering of the MD files in code repositories now supports HTML tags, Block quotes, Emojis, image resizing, and mathematical formulas. Das Markdownrendering stimmt in der Wiki und in MD-Dateien in Code überein.There is parity in markdown rendering in Wiki and MD files in code.

Die Wiki unterstützt mathematische FormelnWiki supports mathematical formulas

Wenn Ihre Anwendung sich mit mathematischen Formeln und Gleichungen befasst, können Sie diese jetzt auch mit dem LaTeX-Format in der Wiki einfügen.If your application deals with mathematical formulas and equations, you can now put them in Wiki using the LaTeX format.

Wiki, MatheWiki math

Verweisen auf Arbeitselemente in der WikiReference work items in Wiki

Sie können jetzt auf Arbeitselemente auf Wiki-Seiten verweisen. Drücken Sie auf „#“, um eine Liste der zuletzt geöffneten Arbeitselemente abzurufen. Wählen Sie das gewünschte Arbeitselement aus.Now you can reference work items in Wiki pages by pressing the '#' key to get a list of the most recently accessed work items and selecting the work item of interest. Dies ist besonders praktisch beim Schreiben von Versionsanmerkungen, Epics, Spezifikationen oder anderen Seiten, auf denen auf ein Arbeitselement verwiesen werden muss.This is particularly useful while writing release notes, epics, specs, or other pages that require referring to a work item.

Verweisen auf Arbeitselemente in der WikiReference work items in Wiki

Sie können jetzt Arbeitselemente und Wiki-Seiten miteinander verknüpfen.Now you can link a work item to a Wiki and vice versa. Sie können Arbeitselemente mit dem Wiki verknüpfen, um Epics-Seiten und Versionshinweisen zu erstellen und Inhalt zu planen, der Ihnen beim Nachverfolgen der Arbeitselemente hilft, die mit einer Wiki-Seite verknüpft sind, und um zu überprüfen, zu welchem Prozentsatz Ihre Epics-Seite bereits vollständig ist.You can link work items to Wiki to create epic pages, release notes, and planning content that helps you track the work items associated with a Wiki page and validate what percentage of your epic page is complete.

Verknüpfen von Arbeitselementen einer Wiki-SeiteLink work items from a Wiki

Verknüpfte Arbeitselemente werden dann auf der Wiki-Seite angezeigt.Linked work items then show up on the Wiki page.

Verknüpfte Arbeitselemente auf einer Wiki-SeiteLinked work items on Wiki page

Über den neuen Linktyp „Wiki page“ (Wiki-Seite) können Sie ein Arbeitselement mit einer Wiki-Seite verknüpfen.Add a link to a Wiki page from a work item through the new "Wiki page" link type.

Verknüpfen einer Wiki-Seite mit einem ArbeitselementLink to Wiki from work item

STRG+S zum Speichern der Wiki-SeiteCtrl+S to save Wiki page

Wir haben Feedback erhalten, dass Benutzer eine Wiki-Seite schneller und einfacher speichern wollten.We heard you wanted a quicker and easier way to save a Wiki page. Sie können eine Seite jetzt einfach mit der Tastenkombination STRG+S speichern. Dann wird eine Standardüberarbeitungsmeldung angezeigt, und Sie können weiter arbeiten.Now you can simply use Ctrl+S keyboard shortcut to save a page with a default revision message and continue editing. Wenn Sie eine eigene Überarbeitungsmeldung hinzufügen möchten, klicken Sie einfach auf das Chevron neben der Schaltfläche zum Speichern.If you would like to add a custom revision message just click on the chevron next to the save button.

Wiki, SpeichernWiki save

Einfügen von umfangreichem Wiki-Inhalt als HTMLPaste rich Wiki content as HTML

Sie können jetzt umfangreichen Text aus jeder browserbasierten Anwendung (z.B. Confluence, OneNote, SharePoint und MediaWiki) im Markdown-Editor der Wiki einfügen.You can now paste rich text in the markdown editor of Wiki from any browser-based applications such as Confluence, OneNote, SharePoint, and MediaWiki. Das ist besonders für Benutzer mit umfangreichem Inhalt (wie z.B. komplexen Tabellen) nützlich, die diesen in der Wiki zur Verfügung stellen möchten.This is particularly useful for those who have created rich content such as complex tables and want to show it in Wiki. Kopieren Sie den Inhalt einfach, und fügen Sie ihn als HTML ein.Simply copy content and paste it as HTML.

Wiki, umfangreicher Inhalt als HTMLWiki rich content as HTML

Verschieben von Seiten in der Wiki mit der TastaturMove page in Wiki using keyboard

Vor diesem Update konnten Benutzer in der Wiki Seiten nicht mit der Tastatur neu an- oder unterordnen. Dies war für Benutzer, die das Arbeiten mit Tastenkombinationen bevorzugen, unpraktisch.Earlier in Wiki, users could not reorder or re-parent pages using keyboard and this would impact users who prefer with keyboard operations. Sie können Seiten jetzt mit STRG+NACH-OBEN-TASTE oder STRG+NACH-UNTEN-TASTE neu anordnen.Now you can reorder pages by using Ctrl + Up or Ctrl + Down commands. Sie können Seiten auch über Seite verschieben im Kontextmenü einer Seite neu unterordnen. Wählen Sie dort die neue übergeordnete Seite aus.You can also re-parent pages by clicking Move page in the context menu of a page and select the new parent page to move.

Wiki-Seite verschiebenMove Wiki page

Dialogfeld zum Verschieben einer Wiki-SeiteMove Wiki page dialog

Hervorheben von gefiltertem TextFilter text highlighting

Beim Filtern im Navigationsbereich in der Wiki wird die gesamte Seitenhierarchie angezeigt.Filtering the navigation pane in Wiki shows the entire page hierarchy. Wenn Sie z.B. nach einer Seite mit dem Titel „foobar“ filtern, zeigt der Navigationsbereich auch alle übergeordneten Seiten an.For example, if you filter a page titled "foobar" the filtered navigation pane would show all parent pages as well. Es führt möglicherweise zu Verwirrung, wenn Seiten, die nicht dem Titel „foobar“ entsprechen, in den Filterergebnissen angezeigt werden.This can cause confusion as to why pages not titled "foobar" are showing up in filtered sets of results. Beim Filtern im Wiki wird nun der gesuchte Text hervorgehoben, um genau anzuzeigen, welche Titel gefiltert wurden.Now, filtering content in Wiki highlights the text being searched to give a clear picture of the titles that are filtered and those that are not.

Hervorheben von gefiltertem Text in der WikiFilter text highlighting in Wiki

Das Verhalten anderer Codenavigationsbereiche ist ähnlich,You will observe similar behavior in all code navigation panes as well. z.B. auch der Dateinavigationsbereich in Pull Requests, Commits, Changesets und Shelvesets.For example, the file navigation pane in pull requests, commits, changesets, and shelvesets.

Hervorheben von gefiltertem Text in einem PRFilter text highlighting in PR

Inhaltsvorschau beim Bearbeiten von Wiki-SeitenPreview content as you edit Wiki pages

Analysen haben ergeben, dass Benutzer fast immer mehrmals eine Vorschau der Wiki-Seite anzeigen lassen, während sie den Inhalt bearbeiten.Data shows that users almost always Preview a Wiki page multiple times while editing content. Bei jedem Seitenbearbeitungsvorgang klicken Benutzer durchschnittlich 1-2 mal auf Vorschau.For each page edit, users click on Preview 1-2 times on average. Das führt zu einem langsamen und nicht optimalen Bearbeitungsprozess, der besonders für Benutzer, die sich gerade erst mit Markdown vertraut machen, zeitaufwendig sein kann.This results in a slow and sub-optimal edit experience and can be particularly time consuming for those new to markdown. Jetzt sehen Sie eine Vorschau Ihrer Seite, während Sie Änderungen vornehmen.Now you can see the preview of your page while editing.

Wiki-VorschauWiki preview

AllgemeinGeneral

ProfilkartenProfile Cards

Es gibt in TFS mehrere Bereiche, in denen Informationen zu einer bestimmten Person angezeigt werden, u.a. die Ersteller von Pull Requests und Arbeitselemente, die einer bestimmten Person zugewiesen sind.There are multiple areas in TFS where information associated to a particular individual is shown, such as, but not limited to: pull requests created by an individual, and work items assigned to an individual. Allerdings werden nur sehr wenige Informationen zu der Person angezeigt, sodass Sie häufig wenig Kontextinformationen erhalten.However, there is limited information about the individual itself for you to gain complete context. Die neue Profilkarte ersetzt die bisherige Profilkarte in TFS.The new Profile Card replaces the existing profile card in TFS. Mit der aktualisierten Profilkarte können Sie mit Benutzern über Ihr TFS-Konto interagieren und mehr über diese erfahren.The updated profile card allows you to interact with and learn more about users within your TFS account. Durch die Integration Ihrer Standard-E-Mail-Adresse und eines IM-Clients können Azure AD-Benutzer (Azure Active Directory) E-Mails versenden und Chats direkt über Profilkarten starten.Through integrations with your default email and IM client, Active Directory (AD) users can send emails and start chats directly from the profile card. AD-Benutzer sehen auch die Organisationshierarchie auf der Profilkarte.AD users can also see the organizational hierarchy within the profile card. Profilkarten können auf der Startseite eines Projekts im Bereich „Teammitglieder“, in der Versionskontrolle, in Arbeitselementen und im Wiki-Bereich aktiviert werden, indem Sie auf das Visitenkartensymbol, das Profilbild oder den Benutzernamen in den Kommentaren klicken.Profile cards can be activated within project home page - team members section, version control, work items and Wiki sections by clicking on the contact card icon, profile picture, or users name within comments.

Profilkarteprofile cards

Runde ProfilbilderCircle avatars

Jetzt sind runde Profilbilder verfügbar.Circle avatars are here! Alle Profilbilder werden nun nicht mehr quadratisch, sondern kreisförmig angezeigt.All profile pictures in the service now displays in a circle shape, rather than a square. Als Beispiel sehen Sie hier den Pull Request für diese Änderung (achten Sie auf das runde Profilbild).As an example, here is the actual pull request for this change (note the circular, non-square avatars).

Rundes ProfilbildCircle avatars

ProjekttagsProject tags

Sie können Projekte jetzt mit wichtigen Schlüsselwörtern, sogenannten Tags, versehen.You can now adorn projects with important keywords (tags). Tags können (von Administratoren) problemlos auf der Projektstartseite hinzugefügt und gelöscht werden, sodass die Benutzer einen schnellen Überblick über Zweck und Umfang des Projekts erhalten.Tags are easily added and deleted directly from the project home page (by administrators) allowing users to quickly understand more about the purpose and scope of the project. Wir haben noch einige Pläne für den Einsatz von Projekttags. Wir werden Sie hier auf dem Laufenden halten.We have more planned for how project tags can be leveraged, so stay tuned for more news here.

ProjekttagsProject tags

Neuanordnen von FavoritengruppenRe-order favorite groups

Sie können jetzt unter My favorites (Eigene Favoriten) die Gruppen mit den Tasten NACH-OBEN und NACH-UNTEN in jedem Gruppenheader neu anordnen.You can now re-order the groups on the account My favorites page using the up and down arrows in each group header.

Neuanordnen von Favoritengruppen


FeedbackFeedback

Wir freuen uns auf Ihr Feedback!We would love to hear from you! Sie können ein Problem melden und es über das Entwicklercommunity-Portal nachverfolgen und Ratschläge zu Stack Overflow (Stapelüberlauf) erhalten.You can report a problem and track it through Developer Community and get advice on Stack Overflow. Teilen Sie uns Ihre Ideen zu Themen, die Sie durch uns priorisiert sehen möchten, wie immer unter UserVoice mit. Dort können Sie Ihre Idee hinzufügen oder bestehende Ideen bewerten.As always, if you have ideas on things you would like to see us prioritize, head over to UserVoice to add your idea or vote for an existing one.


Seitenanfang
Top of Page