Depends on your workflow. I looked at the projects GitHub and I'm confused where the lazy part comes from. The UX seems more complex than just plain git which is much simpler for me. But I rarely do anything other than checkout, add, commit and rebase. And most of them are aliased co for checkout, ci for commit, etc and the rest are tab completed. Starting a TUI and navigating menus would be a waste of time for me.
It seems with the git command line the way to do it is to switch to main then pull then switch back to my feature branch then rebase.
With lazygit i hit f on the main branch which pulls its changes then i can rebase (r) right away.
I also like to review the diff of each file before staging it. I get a nice list of changed files, i can select one and see the diff in it, then I can stage it.
In case you haven't figured it out yet, you can do `git fetch origin` to fetch the latest branches from origin. And then `git rebase origin/main` to rebase the current branch against origin/main. origin/main doesn't have to be the same as local `main` so you don't need to switch branches at all.