Git のリモート/ローカルのデフォルトブランチを master から main に変更する

公開日:
最終更新日:
Git のデフォルトブランチを変更

2020年10月に GitHub は差別的な言葉を取り除くという理由から新規作成リポジトリのデフォルトブランチ名を master から main に変更したようですね.
これまで GitHub を使っていたユーザにとっては少しややこしくなってしまった部分はあるが致し方ない…
ということで,デフォルトブランチを master から main に変更してみましょう.

1. 環境

  • macOS Big Sur: 11.2.3
  • git: 2.24.3

今回変更するリポジトリは /path/to/Vitis_HLS_Gaussian だとします.
まずは,add, commit, push をしてローカルでの変更をリモートに反映しておきましょう.

$ cd /path/to/Vitis_HLS_Gaussian
$ git add .
$ git commit -m "適当なコミットメッセージ"
$ git push -u origin master

ちなみにこのリポジトリについては以下で記事を書いているので,興味ある方は読んでみてください.

2. Git をアップデートする

デフォルトブランチ名を変更できるようにするためにはバージョン 2.28.0 以上でないといけないので,まずは Git をアップデートします.
ついでに,今使っている Git はプリインストールされているもの (Apple Git-128) ですが,最新版をインストールするついでに Homebrew で管理できるようにしておきます.

$ git --version
git version 2.24.3 (Apple Git-128)
$ brew ls | grep git
# 何も返ってこない
$ brew install git
# インストール時のログ
$ /usr/local/bin/git --version
git version 2.30.1

これでインストールできましたが,まだおそらくパスが通っていないはずなので,パスを通しておきましょう.
1行目で >>> として,上書きないように気をつけてくださいね… (筆者は手が滑ってしまって,悲しい思いをしました…😢)

$ echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.zshrc
$ source ~/.zshrc
$ git --version
git version 2.30.1

このようになって変更されたと思います.
zsh じゃなくて bash を使っている人は .zshrc の部分を .bashrc に変えれば OK です.
もちろん他の Shell でも OK です.

これで,デフォルトブランチ名を変更できるようになりました.

今回直接は関係ありませんが,今後新しく作るリポジトリでもデフォルトのブランチ名が main になるように設定を変更しておきます.
これをしておかないと,ローカルで $ git initして作ったディレクトリのデフォルトブランチはmasterのままになってしまいます.

$ git config --global init.defaultBranch main

3. リモートでデフォルトブランチ名を変更する

先にリモートでデフォルトブランチ名を変更しておくことをおすすめします.
先にローカルで main ブランチを作って push するとリモートでは 2 つのブランチができてしまい,master ブランチを消してしまうと変更履歴が消えてしまうからです.

まず,変更したいリポジトリにリモートでアクセスして,Settings を開き,左の項目から Branches を探します.

GitHub の Settings 画面
GitHub の Settings 画面

Branches をクリックすると一番上に Default branch とあり,そこが master になっていると思います.
その右のペンのマークを押すとブランチ名を変更できるので,main に変更しておきましょう.

GitHub のデフォルトブランチの変更
GitHub のデフォルトブランチの変更

これで,リモートのデフォルトブランチ名が master から main に変更できました.

4. ローカルでデフォルトブランチ名を変更する

次にローカルでもデフォルトブランチ名を変更しましょう.

$ cd /path/to/Vitis_HLS_Gaussian # いじっているリポジトリに移動
$ git branch # master branch があることを確認 (他にもあるかもしれません.)
* master
$ git branch -m master main # brach 名を master から main に変更
$ git fetch origin
From github.com:hashi0203/Vitis_HLS_Gaussian
 * [new branch]      main       -> origin/main
$ git branch -u origin/main main
Branch 'main' set up to track remote branch 'main' from 'origin'.
$ git remote set-head origin -a
origin/HEAD set to main
$ git branch # main branch に変更されたことを確認
* main
$ git status # 最新の状態になっていることを確認
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean

これで,ローカルでもデフォルトブランチを main に変更できました.
後は,いつも通り使っていけば OK です.

5. まとめ

Git のデフォルトブランチ名を変更する方法を紹介しました.
少し面倒ですが,時代の流れには逆らえないので,少しずつ対応していきましょう.

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA