web関連
【git】「error: src refspec main does not match any」の解消方法
新規リポジトリを作成して、リモートリポジトリにpushしようとしたら「error: src refspec main does not match any」というエラーが出たので解決方法の備忘録。
エラーの解消方法
以下のコードを叩き、「ローカルブランチ」と「リモートリポジトリのブランチ」が同一かどうか確認。
git branch
異なる場合(例:ローカルがmasterでリモートがmainなどの場合)は、以下のコマンドでローカルとリモートのブランチを揃える。
git branch -m master main
これで、「error: src refspec main does not match any」は無くなる。
もし、ブランチ作ってしまった場合は、以下のコマンドで削除可能
git branch -d localBranchName
「error: src refspec main does not match any」が起きた原因
原因としては、
git initをローカルで叩き、デフォルトブランチとしてmasterブランチが作成される。- リモートリポジトリ(githubやbitbucket)では
mainブランチがデフォルトブランチで、mainブランチが作成される。 - ローカルとリモートでブランチが異なる現象が起きた。
なので、ローカル環境のmasterブランチをリモートリポジトリのブランチに合わせてmainに変更して解決した。