初めに
私は実務でも個人でもソフトウェア開発にGitHubを使用している。GitHubは2020年10月より、新たに作成したリポジトリのデフォルトブランチをmasterからmainへと変更した。その背景はこちらを参照されたい。
今更ながら私も時代の潮流に乗ろうと思い、またmainの方がmasterよりもタイピングしやすいとも感じたため、今後はリモート・ローカルリポジトリ共にデフォルトブランチをmainで開発しようと思い、ローカルリポジトリにおけるその方法を執筆する至った。
環境
- macOS Big Sur
- 【更新前】git version 2.19.0 --> 【更新後】git version 2.37.3
- Homebrew 3.5.10
手順
#0 Gitのアップグレード
ローカルリポジトリのデフォルトブランチの指定は、Gitのバージョンが2.28.0以降の場合に設定できる。無指定の場合はmasterがデフォルトで作成される(git version 2.19.0時点で確認済)。2.28.0のリリースに関するGitHubブログにて説明がある。
git --version
で現在のバージョンを確認し、2.28.0未満の場合、Gitをアップグレードする必要がある。2.28.0以降の場合はこちらの手順は不要なため飛ばしてよい。以下はHomebrewを用いたアップグレード手順。
- Homebrewがインストールされていない場合は、まずは以下を実行。
brew --version
で情報が出力されればインストール済みのため当手順は不要。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
※最新のインストールコマンドはこちらを参照。
- HomebrewでGitをインストールしていない場合は以下を実行。
brew list | grep git
でgitと出力される場合はインストール済みのため当手順は不要。
brew install git
- HomebrewのGitをアップグレード(前手順でHomebrewでGitをインストールした場合は不要)
brew upgrade git
ここまで終了したら、git --version
コマンドを実行し、バージョンがアップグレードされていることを確認する。
バージョンがアップグレード前と変わっていない場合、環境変数のパスが以前のGitを参照している可能性がある。その場合は、現在のパスとHomebrewでアップグレード後のGitのパスを調べ、アップグレード後のパスへ変更する必要がある。
$ which git
git version 2.19.0 #アップグレード前のGitのパスのままであることを確認
$ brew info git
# 中略
/usr/local/Cellar/git/2.37.3 #アップグレード後のGitのパス
# 後略
export PATH=/usr/local/Cellar/git/2.37.3/bin:$PATH #パスをアップグレード後のGitを参照するよう変更
source ~/.bash_profile #パスの変更を反映
上記手順を行えば、Gitの参照パスがアップグレード後のものへ変更されているはずです。
$ git --version
git version 2.37.3 #アップグレード後のバージョンに変更されていることが確認できる
ここまでで下準備は完了です。
#1 リモードリポジトリのデフォルトブランチを変更する
ここからが本題となります。
まず以下のコマンドでデフォルトブランチの確認を行います。
git config init.defaultBranch
特に指定していない場合、何も出力されないと思います。この場合のデフォルトブランチはmasterとなっています。
次に、デフォルトブランチをmainへ変更します。
git config --global init.defaultBranch main
※--global
の部分はご自身のご都合によりご変更ください。設定のスコープに関する説明はこちらの記事が大変分かりやすいです。
最後にデフォルトブランチの確認です。
$ git config init.defaultBranch
main #mainに変更されていることが確認できる
これで、新規にローカルにGitリポジトリを作成した場合、デフォルトで作成されるブランチはmainとなっているはずです。