Fix "Your local changes would be overwritten by checkout"
You have uncommitted changes to a file that differs on the other branch, and switching would destroy them. Either commit them, or run git stash to put them aside, switch branches, and later run git stash pop to get them back.
Step by step
Put your unfinished changes aside:
$ git stashSwitch branches safely:
$ git switch mainLater, come back and restore them:
$ git switch newsletter$ git stash pop
The same error appears for git checkout, git switch, git merge and git pull. Git never silently throws away uncommitted work.