I appreciate that she acknowledges that rebase is a weird thing to do to a branch. I know it's an ordinary part of many folks' workflows, but it's such a footgun.
Many hosts allow you to set rules to protect branches from getting their commits removed in the remote (in fact, I think that's the default for gitlab main branches) or to prevent people from pushing their commits to them directly.
I expect even "the main branch has to stay more or less in sync with origin/main" can be automated... though it might not be what you always want, depending how you work.
I think that's treading into "GitLab/Hub/Bitbucket/etc. are not git" territory. Good feature, but not in the product that the post is about.
Still glad you mentioned it, though-- Maybe someone just learned about it because of you.
is reflog very unfriendly UI? what would make it better?
Reflog has saved my ass many times.
Git
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
Resources
Rules
- Follow programming.dev rules
- Be excellent to each other, no hostility towards users for any reason
- No spam of tools/companies/advertisements. It’s OK to post your own stuff part of the time, but the primary use of the community should not be self-promotion.
Git Logo by Jason Long is licensed under the Creative Commons Attribution 3.0 Unported License.