A long time ago, I started using BitBucket instead of Github. Mainly, because *back in in the day*, Github gave free public repositories and BitBucket gave free private repositories.
I had been using git for years and didn’t see much difference between two remotes. Github was obviously a nicer interface, but BitBucket was much, much more affordable. I never even went to either of the websites anyways with terminal, towerapp, and sourcetree. Both Github and BitBucket continue to be excellent. GitLab is also good.
Recently, I had reason to work on a private repo at Github for the first time in a few years. I was prompted to to turn on 2FA and did so.
I went to clone the repo via terminal and was told my password was wrong. It wasn’t wrong. I was under a timer, so I simply downloaded the Desktop app and it worked flawlessly. Nice product. I assumed it must because I had been using SSH before and now was using HTTPS to clone? Whatever, I had things to do.
About a week later, I decided to push an old python project to github and see what the problem was. It turns out that you need to have a personal access token setup on the github in the developer settings.
This token acts as a stand-in for your password and is saved to your keychain (I’m a mac!). Future requests are signed using it. Solved.