branch naming policy is unclear to me

Issue #69 closed
Former user created an issue

Hi,

We're evaluating Control Freak. A lot of interesting features...

I have problem with the branch names. I understood from the docs that the control freak branch naming policy should somehow match with Bitbucket's naming policy.

The matches I see are "release" with "release/xxx" and hotfix with hotfix/xxx. But what Bitbucket branches match control freak default, development, production branches?

Or other way round: what control freak branches match Bitbucket branches feature/xxx, bugfix/xxx.

Best regards Michael

Comments (4)

  1. Michael Südkamp

    After testing with some branch names I have a better understanding. It seems that a branch name jv-3-18-3-fixes is covered by "hotfix branches" because "hotfix branches" is the only type where "commit history rewrites" are allowed and we can "push -force" to it. Not that obvious, or? These our release branch names come from a CVS to Git vonversion. We should probably consider to rename them to the Bitbucket "release/xxx" scheme. Then Control freak would correctly reject "push -force" on them.

  2. Julius Davies [bit-booster.com] repo owner

    Control Freak divides all branches into 8 sets:

    1. Default - a single branch (whatever is set as the "Default" branch on the repository's "Details" config page - e.g., the branch that git automatically checks out after "git clone").

    2. Development - a single branch (whatever is set as "Development" in the repository's Branching Model).

    3. Production - a single branch (whatever is set as "Production" in the repository's Branching Model).

    4. Release Branches - several branches (whatever matches "Release Branches" in the repository's Branching Model).

    5. Hotfix Branches - several branches (whatever matches "Hotfix Branches" in the repository's Branching Model).

    6. Bugfix Branches - several branches (whatever matches Bugfix Branches in the repository's Branching Model).

    7. Feature Branches - several branches (whatever matches Feature Branches in the repository's Branching Model).

    8. All Others! Any branch that did not fall into one of the above 7 sets.

    Most of Control Freak's controls only operate on sets 1-5 and ignore any branch that falls into sets 6-8.

    However some controls (like Jira Policy and Foxtrot Blocking) can be setup to operate on all 8 sets.

    The "Block History Rewrites" control can only be configured to operate on sets 1-5. There is no inherent technical reason for this limitation. The main reason we put in this limitation was to keep the UI from getting too cluttered, and to keep things more simple for admins.

    Note: It's very typical for Default to be "master", and for Production === Default in git-flow shops, and for Development === Default in most others, but it all depends on how you've configured things.

  3. Michael Südkamp

    Thank you, why not adding this description to your documentation?

    It seems that a branch name jv-3-18-3-fixes is covered by "hotfix branches"

    This behaviour for commit history rewrites is still not obvious. IMO this branch should be blocked. You can close this issue - I don't see how I can do this.

  4. Julius Davies [bit-booster.com] repo owner

    This ticket arose because of weaknesses in our documentation, which we've since improved.

  5. Log in to comment