世界を動かす技術を、日本語で。

Codeberg上のGentoo

概要

Gentooが Codeberg 上にリポジトリミラーを開設 今後は GitHub以外 でのコントリビューションも可能 段階的なミラー移行 の一環 Codebergは Forgejo ベースの非営利運営サービス 利便性向上と独立性確保が目的

GentooのCodeberg進出とミラー移行

  • GentooCodeberg (https://codeberg.org/gentoo/gentoo)上に公式リポジトリミラーを設置
  • GitHub 以外でも 貢献(コントリビューション) が可能な新たな選択肢
  • 段階的に 他のgitリポジトリ もCodeberg Gentoo組織内で公開予定
  • 2025年エンドオブイヤーレビューで予告された GitHubからのミラー移行 施策
  • CodebergForgejo ベースで、ベルリンの非営利団体が運営
  • Gentoo公式リポジトリは引き続き 自前でホスティング
  • 貢献の利便性向上 のためのGitHubミラーと同様の位置付け

CodebergでのPull Request提出方法

  • AGit方式 の利用推奨

    • 自身のCodebergアカウントにgentoo.gitのフォーク不要
    • ストレージ効率 に優れる方法
  • セットアップ手順

    • 上流リポジトリをクローン
      • git clone git@git.gentoo.org:repo/gentoo.git
      • cd gentoo
    • Codebergリモートを追加
      • git remote add codeberg ssh://git@codeberg.org/gentoo/gentoo
    • 作業用ブランチを作成
      • git checkout -b my-new-fixes
  • Pull Request作成コマンド

    • git push codeberg HEAD:refs/for/master -o topic="$title"
    • 上記コマンドで自動的に PR作成
    • 追加コミット時も同じコマンド(topic名は統一)
  • 強制プッシュが必要な場合

    • コミット修正時は-o force-push=trueを追加
  • 詳細ドキュメント

    • 公式Wikiにて 追加情報 を掲載

Codeberg移行の意義と今後

  • 利便性と独立性 の両立

    • 貢献者の選択肢拡大
    • 非営利・欧州拠点 のCodeberg利用による信頼性向上
  • 今後の展開

    • 他リポジトリのCodeberg展開
    • コミュニティ主導 の開発体制強化
  • 協力者への感謝

    • 移行実現に尽力した関係者への謝意

Hackerたちの意見

Gentooみたいな重要なプロジェクトができるってのを見るのはいいね。この「大きな分離」は着実に進んでいて、より多様なインターネットに向かってる感じがする。

これって、Githubからのコード移行がもっと頻繁になる始まりかな?何年も、Githubに集中する理由は開発者がそこにいるからってのが一番の理由だった。開発者やチーム同士で、関係ない人たちとも簡単にプルリクエストを管理できるのが良かったし、コミュニティからのランダムなPRもあまり手間がかからなかった。他の機能はgit特有のもの(ブランチ、マージ、ポストコミットフックなど)が多かったけど、プルリクエストやコードレビュー、CIアクションはかなりGithub特有だった。でも、CopilotとかがGithubを通じてどんどん進められてる今、こんなにコードが一箇所に集まってるのがもう十分なメリットとは言えないかも。GitリポジトリにはGithubが必須ってわけじゃないから、Gentooがどうなるか見ものだね。一回限りのことかどうかはわからないけど、Gentooはいつも自分たちのやり方を貫いてるから、もしかしたら彼らだけの話かもしれない。でも、最近この話題をよく耳にするから、トレンドになってるのかも。

どこにリポジトリがあってもあまり関係なく、連邦的なフォークやプルリクエストができるようになるのを楽しみにしてる。

Arch Linuxはずっと自分たちのGitLabインスタンスを使ってるよ(ただしGithubへのミラーもあるけど)。DebianとFedoraも長い間、自分たちのGitインフラを運営してる。ほかのディストロについてはよく知らないけど、GentooがGithubを使ってるのには驚いた。確か、これらのディストロはGitが流行る前にcvsやsvnで始めたんじゃなかったかな。

Githubからのコード移行、そうなってほしいね。MicrosoftがGithubを取り込んだとき、大きな移行があったし、多くはGitLabに移ったけど、確かそのせいでGitLabはダメになったんだよね。でも、結局定着しなかった。Microsoftが「デフォルト」のGitサービスを支配してるのが、フリーソフトウェアに対する彼らの歴史を考えると、いつも気に障ってた。

偶然にも、私が最もよく使ってるプロジェクトはCodebergにあって、Microsoft GitHubのソーシャル機能やアップセル、Copilotのプッシュなどを隠すためのフィルターリスト(uBlock Originみたいな)なんだ。もっとプロジェクトが移行するまで、これを耐えられるようにするために作ったよ。 https://codeberg.org/toastal/github-less-social

@mitchellhのGitHubから移行することについての視点がすごく好き。 --- > 「もしあなたがGitHubと競っているコードフォージで、GitHubに似ているなら、もう負けてるよ。GitHubは2010年のベストソリューションだった。」 [0] > 「GitHubを例に挙げているけど、すべてのフォージは似たようなもので、ここで特定のものを挙げているわけじゃない。」 このページはほとんど役に立たない。 [1] > 「デフォルトのソースビューは...こんな感じであるべきだ: https://haskellforall.com/2026/02/browse-code-by-meaning [2] [0] https://x.com/mitchellh/status/2023502586440282256#m [1] https://x.com/mitchellh/status/2023499685764456455#m [2] https://x.com/mitchellh/status/2023497187288907916#m

Zigから始めたと言えるかな。ヨーロッパ人にとっては、信頼性やコパイロットよりもローカルであることの方が重要だね。

そう願ってるよ。トランプとアメリカの企業がヨーロッパに対してソフトウェア戦争を宣言して以来、アメリカの企業への依存をできるだけ減らしたい。理想はゼロだね。ハードウェアも含めて。これには時間がかかるけど、カナダ人はここでの問題を理解してる。ヨーロッパの政治家は、トランプとその仲間たちが物事を永遠に変えたことをまだ理解する必要がある。

GitHubがsha256リポジトリに対応できないから、プロジェクトの一つをCodebergに移したよ。Codebergは対応してるからね。

さておき、GitHubで大きなプルリクエストをレビューするのがほぼ不可能になったよ。最もシンプルな変更ビューでも、必要なファイルが読み込まれるのを待つのに時間がかかりすぎる。10年前の体験と比べてパフォーマンスがかなり落ちたし、UIもめちゃくちゃになった。もしかしたら、雰囲気も悪くなったかも。

大きなプルリクエストをレビューするための改善されたUIだなんて、よくそんなこと言えるよね。コードを書いたこともないUIデザイナーにデザインさせたんじゃないかな。

いいコードレビューのツールってある?私が使った中で一番良かったのはGerritかな。少なくとも原則的にはまともなデザインがあるし。それ以外はGitHubとGitlabしか使ったことがないけど、どっちもおもちゃみたいに感じる。(あとメーリングリスト、笑)。でもGerritの実装はあまり愛されてないみたいで、Go/Androidを動かすための最小限のメンテナンスだけされてる感じだね。それ以上は何もない。

スローダウンにはあまりイライラしてないけど、もう彼らを信じられなくなったのは、システムに対して無頓着だったから。最近、PRのレビューをしたときに、折りたたまれたセクションが見えなくて、2つのパッチが連続したコードみたいに見えちゃったんだ。それが意味不明で動かないってコメントしたら、後で恥ずかしい思いをしたよ。幸い、再度PRを見たときには問題が修正されてたけど、信頼度はかなり下がったね。

ちょっとしたヒント:PRのURLの後に .patch を付けると、gitパッチがもらえるよ。curl | git am でローカルに適用してレビューできる。

Gerritのワークフローには慣れてたけど、AGitのワークフローは知らなかった。元のAGitのブログ記事はもう見られないけど、アーカイブされてるよ:https://web.archive.org/web/20260114065059/https://git-repo.... そこから、このワークフロー用の専用Gitサブコマンドを見つけた:https://github.com/alibaba/git-repo-go AGitについて読んだことがあるけど、Gerritのワークフローの少し改良されたバージョンって感じで好きだな。特に、GerritのChangeIdを生成するためにコミットフックに頼らずに、自分で定義したセッションIDを使えるのがいいね。GerritがこのセッショントークンをChangeIdの代わりにサポートしてくれたら最高だな。

他のgitベースのワークフローよりGerritのワークフローが好きだな。特に将来的にJujutsuの方向に進むみたいだからね。: https://www.gerritcodereview.com/design-docs/support-jujutsu...

もう使い始めたよ、こういう流れだからね。前にGentooのためにGithubの貢献を使ってたのと結構互換性がある。今のところ2つのデメリットがあるんだけど、 - サイトのUXはかなり速いのに、gitのコマンドライン作業は遅い。Githubに比べてgitの操作が本当に遅い。 - Github actionsと完全に機能が一致してない。CIはフルのpkgcheckを実行しないみたいだから、新しいGentooの貢献者はそれが解決されるまでGithubにPRを出す方が安全だと思う。

それはいいね。トランプがずっと脅してくるようになってから、アメリカ依存のヨーロッパ人が本当にイライラするようになった。カナダ人は問題を理解してるけど、ヨーロッパの政治家は遅すぎる。トランプがエージェント・クラスノフとしても知られている理由がある。ユリ・ベズメノフは1980年代にこれを予言してたし、「ゾーンをクソで埋め尽くす」戦術を説明してた。これはKGBの戦略(いや、KGBよりも古いかも)。スティーブ・バノンはただ盗むだけで、自分で何かを考え出すことができない。自分自身はCodebergをあまり使ってないけど、知ってはいる。ただUIがちょっと…怖いんだよね。GitlabもひどいUIだし。GithubだけがUIをうまく作ったのが本当に不思議。どうして他のところはシンプルに保つことを学ばないんだろう?

Codebergは僕のお気に入りのGitホスティングサービスの一つだよ。僕にとっては、GitHubが本来あるべき姿だったと思う。ほとんどのGitHubプロジェクトをCodebergにミラーリングしてるし、いつか時間ができたら、Codebergをメインのリポジトリホスティングサービスにして、GitHubをミラーにするかもしれない。まだ見てないなら、Codebergは寄付を募ってるよ: https://docs.codeberg.org/improving-codeberg/donate/>。好きな製品をサポートする良い方法だよね、自分が製品になっちゃうよりは。

今、欧州の多くのソフトウェア会社は、米国とEUの地政学的な状況を受けて、米国以外の代替案を探してるよ。これは大手クラウドプロバイダー3社に限らず、Microsoft全般や他の米国のプロバイダーにも当てはまる。

僕も「大事なプロジェクト」をCodebergに移してるよ。

GitHubに対するネガティブな意見が多いけど、ひとつ本当に良い機能を褒めたい - 組織内のコード検索。特に「プラットフォーム」に関連する変更を探すのにすごく役立ってる。他の人がどうやって問題を解決したかを見つけられるのがいいんだ。ドキュメントがハッピーパスしか示してなかったり(5年前に書かれたもので「もう誰もそんな風にはやってない」ってこともあるし)、そういう時に特に便利。

それってGitHub特有の機能なの?