Skip to content

Make the v2 branch the default branch #302

Closed
@mbrubeck

Description

@mbrubeck

I have pushed the changes from #284 to the v2 branch in this repo, and made a v1 branch where maintenance of smallvec 1.x can continue. These branches have diverged, and there are several things that need to be forward-ported from the v1 branch to the v2 branch before we can release it. This will require significant manual rebasing / cherry-picking / conflict resolution, so I couldn't just merge the v2 branch into master.

In order to focus new development on the 2.0 codebase and avoid further divergence, I would like to make v2 the default branch. I am not an admin of this repo. @jdm, do you have access to do this, and do you agree with this plan? And what should we do with the old master branch in the meantime?

Some possible approaches:

  • Delete the master branch, leaving only the v1 and v2 branches for now. I believe this will cause errors on pull for developers with existing forks of this repo, which will be disruptive but will also help alert them to this situation. Once version 2.0 is released, either keep v2 as the default branch, or create a new main branch to be the default.
  • Push the v2 code to the master branch, simply overwriting the existing code, and delete the v2 branch. The default branch remains master, causing the least disruption to developers with existing forks. However, the commit history on master will be somewhat confusing.
  • Delete the v1 branch, keep the v1 code on the master branch for now, but make v2 the default branch. Then we have two branches and both have clean git history, but existing developers with master checked out may not notice they are no longer working on the latest code.
  • Keep all three branches around for some reason??

Maybe GitHub's branch renaming and redirect feature can help somehow?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions