Every developer tutorial tells you the same thing: never push directly to main. Always use branches. Always open pull requests. Always have code reviews.
I push directly to main. I have always pushed directly to main. I will continue to push directly to main. This is my personal project and there is no team to review my code except me, and I already know what the code does. Sometimes.
The Branch Philosophy
Branches are great for teams. I am not a team. I am one person at 11pm trying to fix a bug before I go to sleep. Creating a branch called fix/navbar-padding-issue, opening a pull request, reviewing it myself, and merging it takes 4 minutes. Just pushing takes 4 seconds. I choose 4 seconds.
The Consequences
Have I broken main? Yes. Multiple times. Have I lost work? Once. Was it a big deal? It felt like a big deal at the time. Looking back it was like 12 lines of code.
My Actual Workflow
git add .git commit -m "fix"git push
Clean. Fast. Chaotic. Mine.
When I work on a real team project I use branches properly. I am not a monster. I just do not think my portfolio needs a feature/update-about-page-text branch.