GitHubリポジトリのデフォルトブランチの切り替えは通常は簡単ですが、インターフェースやGitコマンドに慣れていないと少し混乱するかもしれません。ローカルで名前を変更したり、変更をプッシュしたりしても、デフォルトブランチの設定がすぐに変更されないことがあります。特に全員が間違ったブランチで作業している場合は、そのことが混乱の原因となります。この記事がプロセスを明確にし、複数のソースを操作したり、設定で迷ったりする必要がなくなることを願っています。基本的に、デフォルトブランチを新しいプルリクエストのターゲットにすることで、特にマスターからメインに移動したり、新しいメインラインに切り替えたりする際に、すべてが整理されます。
GitHub でデフォルトのブランチを変更するにはどうすればいいですか?
方法1:GitHubウェブサイトからデフォルトブランチを変更する
GitHubのウェブインターフェースで直接行うのが、通常は最も簡単な方法です。全員が同じページから作業を開始し、間違ったブランチをプルダウンしてしまうのを防ぎたい場合に適しています。これは、ブランチの名前をローカルで変更してプッシュしたにもかかわらず、デフォルト設定がまだ古いブランチを指している場合に当てはまります。
- GitHubでリポジトリを開きます。
- 上部のメニューバーから[設定]をクリックします(通常は [インサイト] タブの後の右側にあります)。
- 左側のサイドバー メニューの[ブランチ]に移動します。
- デフォルト ブランチの下で、鉛筆/編集アイコンをクリックします。
- ドロップダウンから新しいブランチ(mainなど)を選択してください。表示されない場合は、正しくプッシュされているか確認してください。
- 「更新」をクリックして確認します。
これで、リポジトリのデフォルトブランチが選択したブランチを指すようになりました。設定によっては、反映に数秒かかる場合や、ページの更新が必要になる場合があります。それでも問題が解決しない場合は、以下の方法をお試しください。
方法2:Gitコマンドを使用してデフォルトブランチを変更する
ターミナルで作業していて、そこからプッシュしたい場合は、ローカルでブランチの名前を変更したり移動したりして、その変更をプッシュできます。ただし、これはローカルブランチを更新してプッシュし、GitHubのウェブサイトのデフォルト設定もそれに合わせて変更する、という点に注意してください。少し奇妙に感じるかもしれませんが、これがGitHubの仕組みです。
- ターミナル (または PowerShell、使い慣れたもの) を開きます。
- ` ` のようなリポジトリ フォルダーに移動します
cd path/to/your/repo
。 master
既存のブランチの名前をに変更する場合はmain
、次のようにします。
git branch -m master main
これにより、ブランチの名前がローカルで変更されます。次に、名前を変更したブランチをプッシュし、アップストリームに設定します。
- 新しいブランチを GitHub にプッシュし、アップストリームとして設定します。
git push -u origin main
- ここで、混乱を避けるために、リモートから古いブランチを削除しますが、確実な場合のみ実行してください。
git push origin --delete master
注:これはローカル側の処理のみを行うため、GitHub 自体のデフォルトブランチ設定が既に変更されていることを確認してください。リモートのデフォルトがすぐに更新されない場合があるため、プッシュ後にページを更新してください。その後、設定に戻り、デフォルトブランチがmainを指していることを確認してください。
デフォルト ブランチを変更する必要があるのはなぜですか?
いい質問ですね。masterからmainに切り替える理由がわからない場合は、主に、より包括的な言語を採用するためです。また、リポジトリを再編成したり、新しいブランチを主要な開発ラインに切り替えたりする場合、これをデフォルトにすることで、新しいプルリクエストが適切な場所に送られやすくなります。さらに、新しいコントリビューターにとって、よりクリーンで混乱が少ないのもメリットです。
よくある質問
git branch -m master main
でローカルで名前を変更し、 でプッシュしgit push -u origin main
、 で古いリモートブランチを削除し、GitHubの設定でデフォルトブランチを更新する必要がありますgit push origin --delete master
。少し回りくどいですが、うまくいきます。
いいえ。古いブランチは手動で削除しない限り残ります。そのため、クリーンな状態から始めたい場合は、後で必ず削除してください。
はい、もちろんです。プルリクエストとクローンはデフォルトでメインブランチに反映されるので、変更する前にチームに事前に知らせ、全員が同じ認識を持つようにしてください。
大丈夫です。GitHubの設定に戻って、古いブランチをデフォルトに設定するだけです。大した手間ではありません。
まとめ
デフォルトブランチの変更は、一度コツをつかめばそれほど複雑ではありません。ウェブ上では数回クリックするだけで、Gitコマンドを使えば少し手間がかかりますが、それでも管理可能です。ただし、何か変更を加えた後は、GitHubページを更新して最新の設定を確認し、プルリクエストが正しいブランチを対象としていることを再度確認してください。この情報が誰かの頭痛の種を少しでも軽減してくれることを願っています。私は複数の設定で作業しました。
まとめ
- ローカル ブランチの名前が変更され、適切にプッシュされているかどうかを確認します。
- 「設定」>「ブランチ」から GitHub のデフォルト ブランチを更新します。
- 必要に応じて古い枝を削除しますが、注意してください。
- 共同作業している場合は、変更についてチームに通知します。