error: src refspec master does not match any エラーへの対応

デフォルトブランチが変更されていたのか。。

error: src refspec master does not match any エラーへの対応
目次

TL;DR


本記事でわかることは以下の通りです。

☆ デフォルトブランチが'maseter' → 'main' に変更された理由
☆ タイトルのエラーが発生した場合の対処方法

 

git push 時のエラー


$ git push origin master
error: src refspec master does not match any
error: failed to push some refs to 'https://****/***.git'

 

原因


2020年10月以降、新規にリポジトリを作成する場合、デフォルトブランチが、「main」になったとのこと。

注意点として、既存のリポジトリは「master」のままであること。 ※年内にも既存のリポジトリでもデフォルトブランチ名の変更を可能にする予定らしい

https://www.publickey1.jp/blog/20/githubmainmastermain.html

変更の背景には、人権問題が絡んでいたようです。

今回の変更は、米国ミネソタ州ミネアポリスで5月25日に発生した、警官が黒人男性を拘束し窒息死に至らしめた事件と、その動画がソーシャルメディアなどで拡散したことをきっかけに広がった人権運動を背景にしたものです。 IT業界でこれまでよく使われてきた「Master/Slave」や「Blacklist/Whitelist」など、センシティブと見なされる用語を見直そうという動きが広がりました。

 

解決方法


$ git branch
*main

$ git push origin main

何でもかんでもネットで調べる前に、git branchして確認しとけよと自分を叱りたい。