Githubのデフォルトブランチがmainになった
【目次】
- mainになっていた
- そもそもgit init時にmasterブランチが作成されている
- リポジトリをcloneしてきてから作業するのも良いかも
- zshならgitの補完機能も使えるかも
- [追記] ブランチ名をあとで変更すれば良いだけかも
mainになっていた
Githubのデフォルトのブランチが「master」から「main」になったようです。
GitHub、これから作成するリポジトリのデフォルトブランチ名が「main」に。「master」から「main」へ変更
これを知らずにリポジトリを作成後、masterにプッシュしてしまいInitial commitがうまくいきませんでした。
まずこの解決方法として、以下のようにmasterブランチのコミットをmainブランチへ移しました。
$ git fetch origin * [new branch] main -> origin/main $ git checkout main Switched to a new branch 'main' $ git cherry-pick コミットID $ git push origin main
※コミットIDは、Github上でbranchのcommitsから確認できます
本来Github上でプルリクを出すことができるはずなのですが、masterブランチからmainブランチへはなぜかプルリクが出せない状態になっていた(何も表示がなかった)ので、今回はターミナル上で対応しました。
そもそもgit init時にmasterブランチが作成されている
git init
で初期化する際に、masterブランチが生成されてしまっています。
デフォルトのブランチ名がmasterからmainに変わったのはGithubのみであるので、これらを一致させると良いでしょう。
このgit init
で生成されるブランチ名をmainにするには、init.defaultBranch
で設定できるようです。
※これはgit 2.28以上のバージョンでのみになります。
Git でデフォルトのブランチ名を master 以外に変更する方法
$ git config --global init.defaultBranch main
リポジトリをcloneしてきてから作業するのも良いかも
最初にGithubでリポジトリを作成してきて、$ git clone リポジトリのURL
でクローンしてこれば、すでにあるmainブランチ上で作業を開始することもできます。
$ git clone URL
$ cd リポジトリ
$ git branch
* main
$ git add
・
・
$ git push origin main
zshならgitの補完機能も使えるかも
(私はbashなのでこちらは試せていないのですが)補完機能を利用して、持っているブランチを確認しつつ作業することもできるようです。
[追記] ブランチ名をあとで変更すれば良いだけかも
こちらを書いた時頭になかったのですが、普通にブランチ名をpush前にmainに変更するのでも良いですね。
$ git branch -m <変更するブランチ名> <変更後のブランチ名> // 現在使用しているブランチを変更する $ git branch -m <変更後のブランチ名>