git pushでerror: src refspec master does not match any発生

プログラミング

PythonのDjangoチュートリアルを実施中です。githubに初めてpushしようとしました。

git add --all .
git remote add origin https://github.com/[username]/[repository-name].git
git push -u origin master

ここでエラーが発生しました。

error: src refspec master does not match any
error: failed to push some refs to 'https://github.com/[username]/[repository-name].git'

コミット忘れが原因でした。

(myvenv) $ git commit -m "first commit"
[main (root-commit) ac5e49d] first commit
 15 files changed, 248 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 blog/__init__.py
 create mode 100644 blog/admin.py
 create mode 100644 blog/apps.py
 create mode 100644 blog/migrations/0001_initial.py
 create mode 100644 blog/migrations/__init__.py
 create mode 100644 blog/models.py
 create mode 100644 blog/tests.py
 create mode 100644 blog/views.py
 create mode 100644 manage.py
 create mode 100644 mysite/__init__.py
 create mode 100644 mysite/settings.py
 create mode 100644 mysite/urls.py
 create mode 100644 mysite/wsgi.py
 create mode 100644 requirements.txt

無事にpushできました。

(myvenv) $ git push -u origin master
Enumerating objects: 18, done.
Counting objects: 100% (18/18), done.
Delta compression using up to 4 threads
Compressing objects: 100% (16/16), done.
Writing objects: 100% (18/18), 4.07 KiB | 379.00 KiB/s, done.
Total 18 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/[username]/[repository-name].git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

試したこと

リモートリポジトリの削除を試みた

(myvenv) $ git push origin :master
info: please complete authentication in your browser...
error: unable to delete 'master': remote ref does not exist
error: failed to push some refs to 'https://github.com/[username]/[repository-name].git'

リモートリポジトリを強制的に上書き

(myvenv) $ git push -f origin master
error: src refspec master does not match any
error: failed to push some refs to 'https://github.com/[username]/[repository-name].git'

ブランチ名を変更してpush

(myvenv) $ git branch -M main
(myvenv) $ git push -u origin main
error: src refspec main does not match any
error: failed to push some refs to 'https://github.com/[username]/[repository-name].git'

HEADをつけてpush

(myvenv) $ git push origin HEAD:master
error: src refspec HEAD does not match any
error: failed to push some refs to 'https://github.com/[username]/[repository-name].git'

参考

高評価がついている回答がボリューミーで丁寧でした。直接の解決には結びつきませんでしたが、git push の理解につながると思います。

github - git push error: src refspec main does not match any on linux - Stack Overflow