+1. Can we prohibit pushing the non-standard branch to the main repository?If we can do this, there won't be have new wrong branch.
Francis Chuang <francischu...@apache.org>于2024年10月7日 周一05:27写道: > I think this is a good plan, the 26 trivial branches serve no purpose at > all. > > On 6/10/2024 9:09 am, Julian Hyde wrote: > > The Calcite git repository seems to be cluttered with unused branches. > > I am especially tired of 'maint-0.4.12', which is eleven years old but > > comes up every time I type 'git log origin/mai<TAB>'. > > > > I analyzed our branches. There are 37 branches in origin (see > > https://github.com/apache/calcite/branches/all). > > > > 4 branches have a specific purpose: > > * HEAD (points to main) > > * main > > * master (deprecated, redirects to main) > > * site > > > > 29 release branches, prefixed either maint- or branch-: > > * branch-1.0 > > * branch-1.1 > > * ... > > * branch-1.24 > > * branch-avatica-1.8 > > * branch-avatica-1.9 > > * maint-0.4.12 > > * maint-0.4.15 > > > > 3 seem to be orphans, pushed by mistake: > > * review > > * master > > * issue6607 > > > > 1 is related to dependabot PR > > * dependabot/bundler/site/nokogiri-1.15.6 > > > > Of the 29 release branches, 26 might be called 'trivial'. They are > > direct ancestors of current HEAD and are exactly one commit after a > > tag, because that is how the Maven release process worked. For example > > branch-1.12 is one commit after the tag calcite-1.12.0: > > > > $ git log --abbrev-commit --pretty=format:'%h -%d %s (%cr) <%an>' -n3 > > origin/branch-1.12 > > 0f92251082 - (origin/branch-1.12) [maven-release-plugin] prepare for > > next development iteration (8 years ago) <Julian Hyde> > > ea7ace18cd - (tag: calcite-1.12.0) [maven-release-plugin] prepare > > release calcite-1.12.0 (8 years ago) <Julian Hyde> > > baa13d696f - [CALCITE-1657] Release Calcite 1.12.0 (8 years ago) <Julian > Hyde> > > > > The 3 other release branches might be called 'maintenance branches', > > because they are several commits away from the main branch. They are: > > * maint-0.4.12 (5,459 commits behind and 20 ahead of main) > > * maint-0.4.15 (5,431 commits behind and 4 ahead of main) > > * branch-1.22 (1,869 commits behind and 1 ahead of main) > > > > I propose to delete the 26 trivial release branches and rename the > > maintenance branches: > > * maint-0.4.12 becomes release/0.4.12 > > * maint-0.4.15 to release/0.4.15 > > * branch-1.22 to release/1.22. > > > > I will not delete any tags. And I will not do anything until release > > 1.38 is complete. > > > > Any thoughts on this? > > > > Julian > >