Github に代わるベストなセルフホスト型代替サービス 7 選

Github に代わるベストなセルフホスト型代替サービス 7 選
Git コミット履歴を表示するモニター画面の写真。

Microsoft が Github を買収した後、多くの開発者がコードをホストする代替手段を模索してきました。Microsoft (および他の多くの大企業) は、実績のあるテクノロジー、Web サイト、製品を買収してその範囲を拡大する傾向があります。Skype はその一例であり、現在 Github も同様です。

幸いなことに、他にも選択肢となるバージョン管理システムはたくさんあります。すべてが Github のすべての機能を備えているわけではありませんが、何を必要とするかに応じて、選択肢はかなり豊富です。この記事では、今すぐ自分のマシンにインストールできる Github の最適なセルフホスト代替品をいくつか紹介します。

1. GitLab

Microsoft が Github を買収する前から、GitLab は代替コード管理プラットフォームとしてすでに人気がありました。これは、計画、テスト、パッケージ化、リリース機能を備えたオープンソースの DevOps ライフサイクル ツールです。また、Wiki や問題追跡機能も備えているため、自己ホスト型の「Github のような」エクスペリエンスを求めるユーザーにとって非常に魅力的です。

GitLab のランディング ウェブページのスクリーンショット。

GitLab はセルフホスト型のコード管理プラットフォームとして使用できますが、開発者は有料のプレミアム SaaS バージョンも提供しています。これには、LDAP サーバーとの同期機能や高度な CI/CD パイプラインなどの追加機能が付属しています。

とはいえ、GitLab は自分のマシンにも、ホストされたプラットフォームにも無料でデプロイできます。一方、プレミアム エディションは現在、ユーザーあたり月額 29 ドルから始まります。

2. ゴッグ

Gogs は、ほぼすべてのハードウェアに導入できる軽量の Git ホスティング プラットフォームです。Go で記述されたこのプログラムは、外部依存関係をほとんどまたはまったく必要とせずに、可能な限り高速になるように設計されました。たとえば、わずか 512 MB の RAM を搭載したシステムでも Gogs を実行できます。

デフォルトの Gogs Web ページのスクリーンショット。

Gogs の最大のセールスポイントの 1 つは、仮想サーバー上でも非常に簡単に実行できることです。また、Gogs には、コードの管理、問題の追跡、変更の文書化に必要なすべてのツールがデフォルトで付属しています。そのため、最高の「パワー対重量」比を備えた「手間のかからない」 Github の代替品を探している場合、Gogs は最適な選択肢です。

3. トラック

Trac は、Linux 用のシンプルで柔軟性の高いコード管理プラットフォームです。GitLab や Gogs とは異なり、Trac はバックエンドのバージョン管理システムとして Subversion と Git の両方を使用できます。そのため、すでにいずれかのシステムでプロジェクトが動作している場合に便利です。

Trac プロジェクトのランディング Web ページのスクリーンショット。

Trac は柔軟なツールであるだけでなく、プロジェクト用の強化された wiki および問題追跡システムでもあります。さまざまなチケットを管理し、さまざまな役割を割り当て、リポジトリ内のすべての問題に優先度レベルを作成することができます。

さらに、Trac は、インスタンスのデフォルトの動作を変更できるプラグインも多数提供しています。たとえば、Trac を既存の Github プロジェクトに統合できるプラグインがあります。そのため、プロジェクトの進行状況を定期的かつ綿密に監視する必要がある場合は、Trac が適しています。

4. Gitバケット

GitBucket は、Scala で書かれた JVM ベースの GitHub クローンです。リストにある他のアプリほど多くの機能はありません。実際、その主な利点は GitHub との類似性です。言い換えれば、GitHub が恋しくなったら、いつでも GitBucket に頼ることができます。

gitbucket ランディング ウェブページ

とはいえ、GitBucket には、優れたリポジトリ ビューアー、問題追跡機能、プル リクエストの確認と承認機能、シンプルな wiki が付属しています。それとは別に、プラグインを使用して GitBucket の機能を拡張することもできます。プラグインは、リポジトリに新しい機能を導入したり、既存の機能を変更したりできる小さなコードです。

5. ガイド

Giteaは、軽量でセキュリティに重点を置いた Linux 用のコード管理プラットフォームです。Gogs をベースにしており、システム リソースをほとんどまたはまったく消費せずに、包括的なプラグ アンド プレイの GitHub 代替手段を提供することを目指しています。

gitea ランディング ウェブページ

Gogs と比較した Gitea の最大の特徴は、組み込みの RSS フィード、CI/CD ワークフローのサポート、リポジトリの複数のユーザー ロールです。拡張性も高く、軽量で自己ホスト型の GitHub を探している場合、Gitea は優れた代替手段です。

6. 気まぐれな

このリストの以前のエントリとは異なり、Mercurial はGitHub とはまったく異なるコード管理プラットフォームです。Mercurial は、新しいソフトウェア開発者が簡単に習得できる、よりクリーンで具体的なコード管理方法を提供します。Subversion と同様に、Mercurial は Linux システムにすでに類似したコマンドを提供することで、不要な部分を削減することを目指しています。

mercurial ランディング ウェブページ

Mercurial のセールスポイントの 1 つは、クロスプラットフォームで高度にモジュール化されていることです。その結果、このプラットフォームには、Mercurial ワークフローをカスタマイズするために使用できる多数の拡張機能が付属しています。たとえば、hgnested 拡張機能を使用すると、メイン リポジトリ内に小さなサブ リポジトリを作成できます。

7. 化石

Fossil は、シンプルさと信頼性を重視した Linux 用の非 Git ソース コード管理システムです。Git や Mercurial とは異なり、Fossil はコードを開発し、他の人と共有するための完全なオールインワン プラットフォームを提供します。Fossil をインストールすると、すぐにフォーラム、問題追跡ツール、さらには簡単な IRC チャットも利用できます。

最高の Github 代替品 - Fossil Landing ウェブページ

Fossil のユニークなセールス ポイントの 1 つは、簡単に導入でき、マシンの要求に柔軟に対応できることです。sudo 権限なしで単一のバイナリから Fossil リポジトリを作成したり、Docker と Docker Compose を使用してコンテナとして実行したりできます。これは、すでにサーバーを所有していて、ほぼすべての環境に簡単に導入できる適応性の高いコード管理プラットフォームを必要とするユーザーにとって魅力的です。

お使いのマシンにインストールできる GitHub の最良の代替手段をいくつか学ぶことは、オンラインでのデジタル プライバシーを取り戻すための第一歩にすぎません。Shlink を使用して独自の bit.ly 代替手段を作成し、この素晴らしいセルフホスティングの世界を探索してください。

画像クレジット: Yancy Min (Unsplash経由)。すべての変更とスクリーンショットはRamses Redによるものです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です