Wann Gated Check-In?
Ich bin mit TFS 2010. Ich verwende derzeit Gated Check-in build auf dem Stamm (HAUPT -) Niederlassung nur. Und ich verwenden CI auf DEV und RELEASE-Zweige.
- Warum nicht Gated Check-in build auf alle Zweige?
- In welchen Szenarien, sollten Sie nicht verwenden Gated Check-in build auf DEV und RELEASE-Zweige?
- Ist es besser immer von Gated Check-in build-auf jedem Zweig?
InformationsquelleAutor der Frage Hossein A | 2011-09-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
In unser sehr großes team, wir machen auch gated in der main-branch und CI in die dev/feature-branches (viele von Ihnen).
Gated bietet mehr Schutz für die Branche aber mit einem sehr großen team und große code-Basis, es kann zurück zu der Warteschlange, wenn die ganze dev-team ist dabei änderungen in diesem Zweig.
CI bietet Schutz, mit ein wenig mehr Vertrauen in die Entwickler auch wissen, dass alle Fragen erhalten Sie schnell gefasst. Es ist ein bisschen optimistischer und kann das team viel schneller bewegen, die geeignet ist für eine dev-branch.
In beiden Fällen, Entwickler unit-tests und testen Sie den code verändern. CI (wirkt sich auf die Mannschaft) und Gated (verbraucht Zeit in der Warteschlange) nicht ersetzen sollte testen - es sollte eine plausible Erklärung komplexer als ich es nicht versuchen, es.
Das ganze team ist in die Funktion/dev Zweige mit CI-für die Mehrheit der Zyklus und die höhere Zweige mit vielen mehr Leuten während der end-game-Stabilisierung - diese beiden letzteren Bedingungen-Unterstützung der Fall für gated.
In einem großen team, auch wir brauchen, um die CI-builds und die rolling tests parallel durchgeführt werden, um Probleme zu erkennen schneller, wenn die build-Zeiten sind nicht trivial und komplette test-Suiten sind auch nicht trivial. In diesem Szenario, Leute Einchecken, ist das CI für die Kommissionierung bis die Letzte Partie der checkin läuft ein bauen und wenn bauen, fällt anderen Maschine ist, die Abholung und test suites.
InformationsquelleAutor der Antwort bryanmac
Gibt es nicht wirklich einen Grund, dass ich weiß, warum nicht zu tun, einem Gated Check-in bei jeder änderung, die Sie machen. Es ist jedoch (im Allgemeinen) eine Voraussetzung für das tun von Gated Check-in: Ihre Bauzeit sollte nicht länger sein, dass ein paar Minuten, einschließlich aller (unit -) test, den Sie haben möchte, der durchgeführt wird, bevor der check-in akzeptiert. Sonst dauert es zu viel Zeit für den check-in zu erhalten, angenommen, oder noch schlimmer für die Entwickler, zu erhalten abgelehnt. Für ein dev-team, es ist auch ein bisschen komplexer, oder zumindest etwas gewöhnungsbedürftig.
Continuous Integration (meiner Meinung nach optimiert in form von Rolling builds) ermöglicht, haben die Entwickler beim check-in Ihren code, ohne die Ungewissheit, ob es akzeptiert wird oder nicht. Wichtig ist, dass der dev wird immer damit konfrontiert zu werden, so bald wie möglich mit negativen Ergebnisse am Ende des check-in. Wenn Ihr das erreichen könnt, mag ich es besser als Gated check-ins.
InformationsquelleAutor der Antwort kroonwijk
Ich lieber Gated Check-In ist überall, weil es die Grenzen der Schmerzen, um die Entwickler zu prüfen, statt zu teilen, dass die Schmerzen mit dem ganzen team, wenn jemand (zwangsläufig) einen Fehler macht.
Wie oben erwähnt, ist es wichtig, dass die Gated Check-Ins schnelle. Ich habe mal einen Gated-Checkin, führt die wichtigsten überprüfungen, dann einen CI-build, startet nach der Gated Checkin erfolgreich läuft, dass mehr Zeit in Anspruch überprüft.
InformationsquelleAutor der Antwort Dylan Smith