はじめに
作業ブランチを作成してリモート同期しようと作業をしておりました。main.txtというソースファイルを git add, git commit後、git push -u originなどとプッシュしようとしてこのエラーが出ました。
対処方法
① ローカルの環境を一つ前に戻す
ローカルで変更した処理を取り消す。最新のコミット、今回で言うmain.txtを作ったコミットを削除。
git reset --hard HEAD
② リモートのmainをローカルにpullする
ローカルのコミット履歴とリモートのコミット履歴が途中までは同じになったようだったので、
git pull origin main
でリモートの状態をローカルに持ってくる。
③ ここまできたらあとは最初から実行
main.textを作って、git addしてcommitして、pushする。
原因
リモート(Github)とローカル(自分のGit)を比べた場合、リモートの方が最新だからpushできないというエラーだったようです。