19 ポイント 投稿者 GN⁺ 2025-11-27 | 13件のコメント | WhatsAppで共有
  • Git 3.0から、新しいリポジトリを作成する際のデフォルトブランチが自動的に main に設定される
  • この変更は Git 2.52 のパッチノートに明記されており、Git 3.0から git init コマンドは ‘master’ の代わりに ‘main’ を使用する
  • Software Freedom Conservancy は2020年6月にデフォルトブランチ名の変更計画を発表し、GitHub は同年10月からこれを適用した
  • Git 3.0 のリリース日はまだ決まっておらず、2026年末ごろに公開されると見られている
  • 新バージョンには SHA-256 ハッシュへの移行保存形式の改善Rust 統合ビルドプロセス などの主要な変更が含まれる

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

  • Git 3.0から新しいリポジトリを作成すると、デフォルトブランチが ‘main’ に自動設定される
    • ユーザーはデフォルトブランチを手動で指定する必要がなくなる
  • Git 2.52 のパッチノートには、「Git 3.0から git init コマンドは ‘master’ ではなく ‘main’ を初期ブランチとして使用する」という文言が含まれている
  • この変更は Git プロジェクトの公式な方針転換であり、従来の ‘master’ という名称を置き換えるもの

背景と関連動向

Git 3.0のリリース時期

Git 3.0の主な技術的変更点

  • デフォルトの ハッシュ関数が SHA-1 から SHA-256 に変更され、セキュリティが強化される
  • 保存形式が改善され、macOS と Windows 環境での性能と互換性が向上する
  • Rust 言語が Git のビルドプロセスに正式統合され、コード品質と保守性の向上が見込まれる

13件のコメント

 
3ae3ae 2025-11-27

PC的な論争とは別に、GitHubと統一されたのは良いことですね
GitHubがmainからmasterに戻ることはないでしょうし…

 
wedding 2025-11-27

man も使いづらいので doc に変えましょう、って冗談を言おうとしたら、HN にもう書かれてましたね(笑)

 
GN⁺ 2025-11-27
Hacker News の意見
  • 正直個人的には気にしていないが、もはや “master” は事実上終わったという意見

    • 一部の シニア開発者 も名称変更を望んでいた
    • とにかく “main” がデフォルトとして定着したので、もう受け入れるべきだという考え
    • この変更を エンジニアリングリソースの無駄 だと考える人もいた
      • 映画業界では今でも “mastering” という用語を使っており、変える理由はないと主張
      • こうした 言葉の検閲 が社会的分断を広げると見る声もあった
    • 別の人は、単なるデフォルト値の問題にすぎないと言う
      • 依然として init.defaultBranch = master に設定できる
      • “master” という単語はかっこよく、“main” は意味が弱いと感じるという意見
    • また別の人は名前そのものには関心がなく、一貫性 さえあればよいと述べた
      • GitHub がデフォルトブランチを変えた後にスクリプトが壊れて一時不便だったが、今は解決済み
    • ある人は、git config --global init.defaultBranch master コマンドでこの論争は無視できると簡潔に助言した
  • “master” がデフォルトブランチだったのに、なぜ 3.0 で変わったのか疑問だという意見

    • アメリカの 奴隷制の歴史 が理由なら、世界中がその問題を背負うのは奇妙だと感じる
    • こうした過剰な言語浄化がどこまで進むのか懸念する声もあった
    • これに対する回答として、Git は BitKeeper の master/slave 構造 から名前を取ったという説明がある
      • Git は “slave branch” という概念をそのまま使ってはいなかったが、用語の由来は残っていた
      • また、奴隷制はアメリカだけの問題ではなく 世界的な現象 だったという意見も示された
  • 自分はデフォルトブランチを develop にして、その後 release に分岐するやり方を好むという意見

    • 「中央ブランチ」という概念は Git の構造上しっくりこないと感じる
    • 議論が大きくなるほど、生産的な議論 が必要だという HN ガイドラインを思い出すべきだという声
    • 昔 SVN ではデフォルトブランチが trunk だったと振り返る人もいた
    • 別の人は、アクティブなリポジトリ では “master” のような魔法的なブランチ名より明示的な名前のほうが良いと同意した
    • Git にはさまざまなバージョン管理の流儀があるので、1つだけが正解ではないとも付け加えた
  • “man” コマンドも非包摂的だとして会社で問題視される、という冗談も出た

    • これに対して、“man” はもともと 性別中立的な語源 を持つという説明が続いた
    • また別の人は、こうした議論は 文脈認識の不足 から生じると指摘した
    • “hash” も麻薬を連想させるから禁止すべきか、と皮肉る人もいた
    • 「そんなアイデアを与えないでくれ」という反応もあった
    • 一方で、「コストもかからず人を気分よくさせるなら、なぜ反対するのか」という穏健な意見もあった
  • “Scrum Master” はなぜ変わらないのか、という質問も出た

    • 冗談で “Scrum Main” と呼ぼうと言う人もいた
    • 別の人は、Scrum Master は master/slave 概念に由来しないから だと説明した
    • ある会社では代わりに “Agile Champion” という呼称を使っているという
    • また別の人は、「では修士号 (MSc) も変えるべきなのか」と冗談を言った
  • こうした変更は 政治的イデオロギーへの屈服 だと批判する人もいた

    • それに対して、「単に親切であろうとする試みかもしれないし、何でも戦争にする必要はない」という反応があった
  • Mercurial は最初からデフォルトブランチ名が “default” だったという言及もあった

  • “master” は Git の 分散構造 に合わない誤った用語であり、技術的にも変えるのが正しいという主張もあった

  • 「最も 不寛容な人 がまた勝った」と言って、“master” を使い続けるという人もいた

  • 自分の作るプロジェクトではデフォルトブランチを常に “develop” にしており、もうこの論争は終わってほしいという意見もあった

 
sudosudo 2025-11-28

良い判断だと思います

 
dalinaum 2025-11-27

妥当な判断ですね。

 
joyfui 2025-11-27

正直、理由はばかげていると思いますが、ともあれ6文字から4文字に変わったというささいな理由で歓迎します。

 
vndk2234 2025-11-27

この調子だと orphan はどうしろっていうんだ……

 
t7vonn 2025-11-28

Git 4.0リリース - orphan の代わりに parentally-independent という用語を使用します

 
dongho42 2025-11-28

🤣

 
hpark 2025-11-27

時代に合った変化だと思います。

 
aqqnucs 2025-11-27

本当にどうでもいいことでエネルギーを浪費していますね。

 
skageektp 2025-11-27

奴隷制があった事実と、master slave と何の関係があるんだ

 
lazyhack 2025-11-27

鶏辛煮のITバージョン