Gerrit wird möglicherweise nicht überprüfte Änderungen zusammenführen, die früher in der Commit-History liegen und sich in einem anderen 'Branch' des Repositories befinden. Hier ist ein Beispiel:
- Überprüfe den gerrit branch
devel
- Erstelle file1.txt, füge hinzu, commite, schiebe nach
refs/heads/temp_branch
- Erstelle file2.txt, füge hinzu, commite, schiebe nach
refs/for/devel
zur Codeüberprüfung
Wenn file2.txt akzeptiert und zusammengeführt wird, wird auch file1.txt zusammengeführt, da es stromaufwärts ist und nicht in einem separaten Änderungs-Branch markiert ist, der sich unter Überprüfung befindet. Dies ist potenziell sehr problematisch und die einzige Lösung, die mir einfällt, ist, dass jeder Push zu jedem Branch zur Codeüberprüfung gezwungen wird. Dies ist nicht ideal, da Sie möglicherweise einige Branches mit einer Gruppe von Genehmigenden haben möchten oder ohne Codeüberprüfung (für einige Codeswaps?).
Die Lösung hier besteht darin, dass jeder Commit im Verlauf zur Codeüberprüfung platziert werden muss, wie es auch der Fall gewesen wäre, wenn file1.txt nicht in einem anderen Branch im selben Repository gepusht worden wäre.
Gibt es eine Einstellung in Gerrit, die diese Regel vorschreibt? Kann jemand an einen Workflow denken, der es ermöglicht, in refs/heads/
zu puschen, ohne andere Branches zu riskieren?
Vielen Dank.