-
Notifications
You must be signed in to change notification settings - Fork 385
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clarify branching strategy #751
Conversation
What is the benefit of using Also, the Relatedly, another thing to consider is tab completion. When I run a command like |
I expect that the v1.x branch will remain the default branch for some time, while in parallel everything will be prepared (removing deprecated code) for release 2.0.0 on a separate branch. So there will be PRs on the v1 as well as on the v2 branch. And there will be backport PRs on the v1.7 branch. Maybe there will be beta or RCs on the v2 branch. Especially in this time I think it is important that the branches can be kept apart well. On which branch should these changes take place if the v1 branch is created after the 2.0.0 release? At some point the time will come when Release 2.0.0 is published. With my proposal the v2 branch will then become the default. And that's just a setting change on Github. To be honest, the names of the branches are not relevant to me and I don't have any particular preferences. I am open to other suggestions. What matters to me is THAT there are different branches for different purposes and that the default branch is set sensibly. How the branches are called is in my experience quite irrelevant for a contributor. For a PR I create a fork, checkout a new branch from the default branch, do my commits and push my branch. Then I create a PR from my branch to the default branch. In most cases I simply don't care what the default branch is called, because I don't commit to the default branch directly.
That is the case here. The tags in SimplePie are called |
Just hit this again with I would mind less if there was a reason but if a project uses one of the standard git workflows, only with branches renamed, it just pointlessly adds a tiny amount of work for infrequent contributors like me. Perhaps I contribute to too many projects (there is 712 directories in my Projects directory. And that is after I pruned it recently.) but it happens enough times a year to make me sufficiently annoyed every time. I guess your roadmap does not really say if the 2.x and 1.x will be developed in parallel other than backports so I assumed they won’t. Personally, I do not think it makes sense for OSS project to do that unless there is someone financing it, and I would do security critical backports at best. |
Very exciting. 😊 I think with so many projects it is easier to get the default branch output via git.
It was not the initial plan but a new branching strategy would make this easier. I also think this will be helpful because PRs unfortunately take longer to merge some times. I have another suggestion for the branch names, which may also fit better with SimplePie's history.
If we are ready to start development for SimplePie 2, we can add another branch.
After releasing SimplePie 2,
But I think switching the |
sorry @Art4 the branching strategies don't sit right with me, I would prefer that development always happened on the trunk and branches started when necessary. I would say keep merging PR's and only back port to Saying that, if there's agreement around a branching strategy and you're keen to take it on, happy for you to make those decisions alongside @jtojnar, @Alkarex and others who are actively contributing. |
Thank you for your answer. I have no problem with your decision. If you create a branch
I would just like to clarify and document one thing in this PR: What development is taking place on the Scenario: When SimplePie 1.8.0 is released, SimplePie 1.9 is developed on |
I've renamed the branch names in the PR. |
thanks @Art4 I'm happy to merge this PR. All development can take place on there's a few PRs that could now be merged to master if we're happy to continue, but will wait for any further comments. |
Thank you very much for clarifying this @mblaney. 👍 I will try to document this strategy in the I think we can remove the WordPress context because there will be no "active" LTS, but we are open for backport PRs to different PHP versions. Should I add also the |
Yeah the |
In #743 (comment) we discussed the introduction of a new branching workflow, which is then also described in the README.md. Now that version 1.7.0 is released, it would be the perfect time to do so before merging any other PRs. My proposal is that the branches could look like this:
v1.7
(LTS for PHP 5.6)v1.x
(Other 1.x versions like 1.8.0, 1.9.0, etc)v2.x
(All 2.x versions like 2.0.0, etc.)Bug fixes or security fixes are created against the latest branch (
v1.x
orv2.x
) and can then be backported to thev1.7
branch.The current
master
branch will then no longer be needed.@mblaney What do you think about the idea of a new branching strategy? The roadmap for that might look like this:
v1.x
(v1.x
will be the new default branch)v1.7
fromv1.x
branch.README.markdown
to explain new branching strategy. (Will be done by this PR.)v1.7
branch about LTS. I can create a PR for this.