I've debated working with IDE or directly on the GitHub website... which is more limited.
This discussion seems to describe general workflow with branches.
https://old.reddit.com/r/git/comments/16bg2h4/why_is_the_branch_ahead_or_behind_main_when_its/