Ich würde gerne wissen, mit welchen Strategien Sie mit A / B-Tests Ihrer App und Ihres Gitflow umgehen.
Überblick:
Wir sind ein Team von 6 Programmierern, die eine große App entwickeln und warten. Bisher haben wir an gitflow mit einigen Add-Ons zu dem von uns hinzugefügten Prozess gearbeitet, der ein paar Jahre lang perfekt funktioniert hat. In vereinfachter Form verwenden wir:
- Master - Zweig (nur Code der veröffentlichten Versionen)
- Release- Zweig, der nach den endgültigen Redundanztests im Master zusammengeführt wird
- Hotfix, der nur in extremen Fällen mit dem Hauptzweig interagiert
- Entwickeln, das die entwickelten Module ansammelt, sobald sie fertig und getestet sind, und schließlich in die Veröffentlichung übergeht.
- / feature ist eine Gruppe von Features, die von der Entwicklung abweichen. Sobald sie fertig sind und die verschiedenen Testphasen bestanden haben, werden sie wieder zu Entwicklungsfunktionen hinzugefügt
- / fix_develop ist eine Gruppe von Funktionen, die Korrekturen für Fehler aus früheren Versionen enthalten, die nicht zu dringend sind, um einen Hotfix zu starten.
Während sich die App weiterentwickelt, verfolgen wir mit dem UX-Team und anderen Stakeholder-Teams eine stärkere A / B-Teststrategie, bei der neue Versionen zwei Versionen haben und basierend darauf, wie unsere Benutzer die eine oder andere Version mögen, der endgültige Master werden Version, solange sie für unsere Benutzer sinnvoll sind.
Nachdem dies erklärt wurde, lautet die Frage : Welche Strategien haben Sie verwendet oder empfohlen, um Code von A / B- Testversionen in gitflow zu verwalten?
Die Optionen, die ich in Betracht gezogen habe, sind irgendwie inkonsistent, z. B. Verzweigung von A- und B-Zweigen vom Master und anschließende Verknüpfung des Release-Zweigs mit dem einen oder anderen, wobei ich nicht weiß, wie ich mit der Trennung des enthaltenen Codes vom Release-Zweig zum Feature umgehen soll Geäst. Eine weitere Option ist das Erstellen von A- und B-Zweigen und das Entwickeln von A- und B-Zweigen, was für meine Teamkollegen nach zu vielen Zweigen und Verwirrung klingt.
Ich höre deine Meinung, danke!
Update: Die von uns entwickelte App ist eine Android-App und wir implementieren die A / B-Tests mithilfe der PlayStore-Plattform für A / B-Tests. Dazu müssen zwei APKs erstellt und eine davon mit einem Rollout% hochgeladen werden. Um die Dinge einfacher zu halten, und da Änderungen manchmal größer sind als nur eine Tastenposition, haben wir beschlossen, keinen eigenen Schalter für A- und B-Tests in einer einzigen APK hinzuzufügen.