I also prefer the second variant. Having a "virtual" branch after the split is just confusing, especially if it can be checked out. If we instantiate "A", "B" and "A and B" as e.g. "7.4", "7.5" and "7.3", then no commits should exist on the "7.3" branch after the split.