abroekhuis commented on issue #202: URL: https://github.com/apache/celix/pull/202#issuecomment-616439699
> > > > @pnoltes why do we not have "develop" set as main branch? Is there a reason for this, or can I change it? > > > > > > > > > If a user does a clone checkout we want is to be the master. The latest release. > > > For a PR default the develop would be better. I am not sure if this is configureable.. > > > > > > Is that the right way to work? Releases are easily found/downloaded via the releases "Tab" here on github. I think that is the right place to point users to: https://github.com/apache/celix/releases > > Source is for developers IMO, not users.. I think it makes much more sense to have "develop" the main branch. > > Is it even the right way to work to use develop as main branch? We are promoting releases through the asf mirror system (they can be downloaded from GitHub as well). > > The source repository contains our latest code. Why not use the master branch for our latest code then? It seems other Apache projects are using the master branch for their latest sources as well, e.g.: [apache/spark](https://github.com/apache/spark), [apache/dubbo](https://github.com/apache/dubbo), [apache/flink](https://github.com/apache/flink), [apache/storm](https://github.com/apache/storm), [apache/hbase](https://github.com/apache/hbase), [apache/avro](https://github.com/apache/avro). They all use the master branch for their latest sources and I'm sure other projects do the same. > > E.g. Apache Spark also maintains `branch-*` branches for every minor release. In our case this could be a `branch-2.1` for a (possible) follow-up 2.1.1 release. Or if 3.0.0 is released and someone asks for a (quick) fix for 2.2.0? > > EDIT: It seems we have a patch to #157 which fixes something for the 2.2.0 release. Ideally this will be released as 2.2.1. The idea to use develop makes sense when looking at git-flow. I think this is just a matter of how we want to work with the code. I like git-flow, but if there are other good models, with added benefits, let's discuss them! Basically: * Develop: work that (potentially) goes into a new version (not a bugfix) * Feature branches: active work * Release branch: once features are done and merged on develop, move to a release branch to stabilise. New development can continue on develop * Bugfix branches: bugs in releases, based on the release tag the issue is found in, results in a release, and merge to develop to get the changes in new code as well. * Master: stable branch with the latest release The actual usage of master can be discussed.. Since it doesn't add much. Tags point to releases, github/apache has the releases in a dedicated place. So keeping the rest of the model, what is wrong for removing develop, and use master for it instead? ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
