概要
ローカルリポジトリのデフォルトブランチ名変更
目的
git init
コマンドで空のGitローカルリポジトリを作成する際のデフォルトブランチ名を master
から main
に変更したい。
環境
- ホストトOS
- Windows 10
- 仮想化ツール
- VMware Workstation Player 16.1.0
- ゲストOS
- CentOS 8
- Git
- 変更前
- Git version 2.26.0
- yum で日本の某ミラーサイトから最新取得
- 変更後
- Git version 2.30.0
- 2021年1月15日現在の最新安定板ソース
- 変更前
背景
下記リンクのAWSハンズオンでAWSを実践しようと思い立ち、記載の手順通りに実施しようとした。
上記の手順ではReactプロジェクトをローカルリポジトリとして初期化し、
リモートリポジトリへpushする手順となっている。
-
git init
後のデフォルトブランチはmaster
。
他方、GitHubは昨年秋頃より新規リポジトリのデフォルトブランチ名を master
から main
に変更していた。
- GitHubリポジトリ新規作成後のデフォルトブランチは
main
。
リモートリポジトリにはない新規ブランチとして master
をpushしても良かったが、
GitHubの声明を読む感じだと今後はGitのデフォルトブランチは main
になるのが主流と考えられる。
個人的に main
を意識づけしたくローカルリポジトリのデフォルトブランチを変更する方法を調査した。
過程
- 所要時間 : 2時間
- 調査 : 1時間30分
- 実施 : 30分
- Git version 2.30.0のソースコードをダウンロード
make configure
./configure
make prefix=/usr/local all
make prefix=/usr/local install
- ゲストOS再起動 <= インストールに成功しても再起動しないと反映されなかった。常駐サービスの再起動でも反映可能か?
-
npx create-react-app amplifyapp
<= 適宜作業ディレクトリにて -
git init
<= 6.で作成したamplifyapp
ディレクトリに移動して実行 git remote add origin git@github.com:{GitHubアカウント}/{新規作成したリモートリポジトリ名}.git
git add .
git commit -m "{適宜コミットコメント}"
-
git push origin main
<= AWSハンズオンサイトではブランチ名がmaster
だったのをmain
に変更
※途中、Ed25519
方式の鍵ペアを作成してGitHubのSSH秘密鍵に登録した。割愛。
結果
問題なくリモートリポジトリの main
ブランチに反映できた。
CentOS 8 のyumリポジトリでは、Git最新版が2.27系の模様(2020/01/15現在)。
仕方なくGit公式リポジトリから最新ソースを取得してビルドした。
git config --global init.defaultBranch main
でデフォルトブランチ名を main
に変更した。
その結果、AWSハンズオンの手順の通りにローカルリポジトリのmainブランチの変更をリモートリポジトリのmainブランチに反映できた。
参照 および 引用
- AWS ハンズオン 静的ウェブサイトのホスティング
- The default branch for newly-created repositories is now main
- Gitをソースコードからインストールする
- Change git init default branch name
- Gitリリース
技術情報をご共有頂きましてありがたい限りです。 m(_ _)m