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」が起きた原因

原因としては、

  1. git initをローカルで叩き、デフォルトブランチとしてmasterブランチが作成される。
  2. リモートリポジトリ(githubやbitbucket)ではmainブランチがデフォルトブランチで、mainブランチが作成される。
  3. ローカルとリモートでブランチが異なる現象が起きた。

なので、ローカル環境のmasterブランチをリモートリポジトリのブランチに合わせてmainに変更して解決した。

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。