4

If feature C depends on features A and B in the sense that both should be implemented, verified and correct for C to work correctly, then the canonical way is to delay development of C until the feature branches of both A and B have been merged back to develop (or master, depending on what your main development branch is) and only create the feature branch ...


3

Merging two features If you merge feature branch B into feature branch A, then A contains both the features of A and B. That's what merging is, after all. This means that you no longer have two separate feature branches with individual lifecycles. When A gets merged into master, that also entails B's features (which are now in A) being merged into master. ...


2

You seem to assume that developing a feature requires a feature branch. In this case, the canonical branching would look like: ------------------------ \ \--A--/ \ / \--B--/ \ / \-C-/ But what happens if after the merge, adjustments are required for A and B? What if furthermore these appear to be required for C? And what ...


Only top voted, non community-wiki answers of a minimum length are eligible