2012-04-12 4 views
5

Einer unserer Entwickler entdeckte etwas sehr Seltsames in Gated Checkin Builds, das ein Feature von Gated Checkins zu sein scheint.Gated Checkin: Sheving der Quellen verursacht Rollback in Visual Studio

Beim Starten eines Gated Checkin scheint die Lösung in seinem Projektmappen-Explorer auf die zuletzt eingecheckte Version zurückzugehen. Nach Abschluss des Builds zeigt Visual Studio eine Fehlermeldung oder Erfolgsmeldung mit dem Button "Code aufnehmen" an. (in Englisch: "Reconcile ...")

Nach dem Klick erhält er seine Änderungen zurück.

Ich weiß, dass Sie in Visual Studio wählen können, Ihre Lösung zurückzusetzen, wenn Sie es ablegen. Es scheint mir, dass Visual Studio dies standardmäßig tut.

Ist es möglich, Visual Studio oder TFS so einzustellen, dass es nach der Ablage für Gated Checkins nicht zurückgesetzt wird? Oder vielleicht kann mir jemand den Grund nennen, warum Visual Studio das tut.

Antwort

4

Der gesamte Prozess mit Gated checkins ist, dass TFS:

  • Konstruiert eine Shelveset mit allen Änderungen
  • versucht, den neuesten Stand der Code-Basis zu bauen + dieser Shelveset &
  • Wenn alles gelingt, Shelveset wird in das Repository übernommen.

Standardmäßig wird von TFS der Arbeitsbereich des Entwicklers in die letzte Prüfung zurückgesetzt d während dieser Operation. Dies kann folgendermaßen geändert werden:
enter image description here

Dadurch kann Entwickler direkt weiterarbeiten, aber sobald der Build über Probleme & ist, können Konflikte beim Abstimmen des lokalen Arbeitsbereichs auftreten.

Im Allgemeinen sollten Gated Builds so wenig wie möglich dauern. Wenn dieses Prinzip beibehalten wird, besteht die Möglichkeit, die Option "Preserve" auf Null zu setzen.
Wenn die Build länger dauert als -say- 5 Minuten, könnte es sich lohnen, dies zu tun.

Eine sehr schöne Beschreibung der Gated Checkin Funktionalität finden Sie in this Artikel von P.Carnahan.

Verwandte Themen