Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】内网怎么把 Git 装起来:部署完成后用 clone 和合并请求验收

2026年10月31日に「Dev.to」が公開したITニュース「内网怎么把 Git 装起来:部署完成后用 clone 和合并请求验收」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

内網にGitサーバー「AngusGit」を導入し、チームで使えるか確認する手順を解説する。LinuxサーバーにDockerを準備後、インストールスクリプトを実行。リポジトリ作成、SSHクローン、ブランチプッシュ、プルリクエストマージの4ステップで動作検証が完了する。データは定期的にバックアップする。

ITニュース解説

システムエンジニアを目指す皆さんにとって、チームでの開発は避けられない道だ。その中で、複数の人が協力して一つのソフトウェアを作り上げるために欠かせないのが「バージョン管理システム」である。今回解説するのは「AngusGit」というツールで、Gitという非常にポピュラーなバージョン管理システムを、皆さんの会社のプライベートなネットワーク(これを「内網」と呼ぶ)の中に自分たちで構築するための方法とその確認手順だ。これにより、外部にコードを公開することなく、安全にチーム開発を進められるようになる。

まず、AngusGitを内網に導入する理由から説明する。通常のソフトウェア開発では、GitHubやGitLabといったクラウドサービスを使うことが多い。しかし、企業の機密情報や重要なソースコードを外部のサービスに置きたくない、あるいはインターネットへの接続が制限されている環境で開発したいといった場合に、自分たちのサーバーにGitをインストールして運用する必要がある。AngusGitは、そういったニーズに応えるための「私有化インストールパッケージ」であり、簡単な手順でGitサーバーを立ち上げられるよう設計されている。

AngusGitのインストール作業に入る前に、いくつか準備が必要となる。まず、サーバーの準備だ。AngusGitを動かすには、最低でもCPUが2コア、メモリが4GB、そして80GB以上のSSDディスクを持つLinuxサーバーが必要となる。これは、AngusGitだけでなく、アカウント管理を行うGM(User Center)というサービスも一緒に動かすためだ。もしたくさんのリポジトリを管理したり、同時に多くの人がアクセスしたりするなら、CPU4コア、メモリ8GBといった、より高性能なサーバーを用意するのが賢明だ。さらに、サーバーには「Docker」と「Docker Compose」というソフトウェアを事前にインストールしておく必要がある。これらは、AngusGitの様々な機能を小さな独立したプログラム(コンテナ)として動かすために使うものだ。データベースについては、自分で用意する必要はなく、インストーラーが自動的にMySQL 8というデータベースを起動してくれる。

次に、ネットワークの設定について説明する。AngusGitにアクセスする際には、http://gm.example.com/ のような「ドメイン名」を使うことが推奨されている。これは、サービスに分かりやすい名前を付けることで、利用者が迷わずにアクセスできるようにするためだ。具体的には、ユーザー管理用の「gm.あなたのドメイン名」と、Gitリポジトリ用の「git.あなたのドメイン名」の二つのサブドメインが必要になる。これらのドメイン名が、AngusGitをインストールしたサーバーのIPアドレスを指し示すように、社内のDNSサーバーを設定する必要がある。もし一時的に試すだけであれば、自分のパソコンの「hostsファイル」という特殊なファイルに、サーバーのIPアドレスとこれらのドメイン名の対応関係を書き込むことでも代用できる。また、アクセスに使う「ポート番号」にも注意が必要だ。ブラウザからのアクセスは80番(HTTPSを使う場合は443番)、そして開発者がコードをプッシュしたりプルしたりする際には2222番ポートを使うことになる。これらのポートがサーバーのファイアウォール(外部からのアクセスを制限する仕組み)で開放されていることを確認しよう。

準備が整ったら、いよいよAngusGitのインストールだ。まず、提供されているURLからAngusGitのインストールパッケージをダウンロードし、サーバー上で解凍する。そして、解凍したディレクトリに移動し、「./install.sh」というスクリプトを実行する。この時、rootユーザー(管理者権限)ではなく、通常のユーザーで実行することが重要だ。スクリプトを実行すると、対話式のインストーラーが起動し、いくつかの質問に答える形で設定を進めていくことになる。

インストーラーでは主に以下の項目を設定する。 「インストール方式」は「Docker Compose」を選択するのが一般的だ。これにより、AngusGitが内部で使う複数のサービスをまとめて簡単に管理できるようになる。「アクセス方式」は「Bundled reverse proxy」を選ぶことを推奨する。これは、一つの入り口を通じて、ユーザー管理サービス(GM)とGitサービスの両方にアクセスできるようにする設定で、ドメイン名を使ったアクセスに適している。「TLS証明書」は、内網での利用であれば、最初は「No TLS, HTTP on :80」を選択し、HTTP接続でサービスを立ち上げるのが簡単だ。後からHTTPS化することも可能だ。「データベース」は「ComposeでMySQL 8を起動」を選べば、AngusGitが自動的にデータベースをセットアップしてくれるため、自分でデータベースを用意する手間が省ける。「Public DNS name」には、先の例でいう「example.com」のような「ルートドメイン」のみを入力する。インストーラーが、必要なサブドメイン(gm.example.comなど)を自動で設定してくれる。「管理者ユーザー名とパスワード」はAngusGitに初めてログインする際に使う、非常に重要なアカウント情報なので、忘れずに記録しておこう。「MySQL root password」はデータベースの管理者パスワードだ。デフォルトから変更することを強く推奨する。

これらの設定を入力し終えると、インストーラーはAngusGitの各サービスをDockerコンテナとして起動し始める。初めての起動には数分かかるが、ターミナルに「Install finished.」というメッセージと「doctor: OK」という健康チェックの結果が表示されれば、インストールは成功だ。この後、さらに1分ほど待ってサービスが完全に立ち上がるのを待ってから、ブラウザでアクセスしよう。

インストールが完了したら、次はログインして、AngusGitがきちんと動作しているかを確認する。まず、インストーラーで設定した管理者アカウントを使って、http://gm.example.com/ (または指定されたIPアドレスとポート)にアクセスし、ユーザー管理コンソールにログインする。そこから、http://git.example.com/ (または指定されたIPアドレスとポート)にアクセスし、Gitサービスを利用できるか確認しよう。

サービスがブラウザで開けたとしても、それだけで本当にチームで使えるとは限らない。ここからが「验收(検証)」、つまり実際に利用できる状態になっているかを最終的に確認する重要なステップだ。この検証は、以下の四つのステップで構成される。

  1. チームとリポジトリの作成: まず、AngusGit上で「チーム」を作成する。これは、複数の人が共同で作業するプロジェクトの単位のようなものだ。次に、そのチームの下に「リポジトリ」(Gitでバージョン管理を行うための倉庫)を作成する。この時、「READMEファイル」を自動で追加するオプションをオンにしておくと、最初からリポジトリに内容があるので、次のステップに進みやすい。
  2. SSH公開鍵の登録とクローン: これが開発者にとって特に重要なステップだ。開発者は自分のパソコンからGitサーバーにコードをプッシュしたりプルしたりする際に、パスワード入力の手間を省き、安全に通信するために「SSH鍵」を使う。SSH鍵は、「秘密鍵」と「公開鍵」のペアで構成され、公開鍵をAngusGitに登録することで、サーバーがあなたのパソコンを認証できるようになる。もしSSH鍵をまだ持っていなければ、ssh-keygenというコマンドを使って生成し、公開鍵(.pubという拡張子がついているファイルの内容)をAngusGitの「私の → SSHキー」のページに貼り付けて登録する。登録後、git ls-remoteコマンドでサーバーとのSSH接続をテストし、問題なければ、作成したリポジトリを自分のパソコンにgit cloneコマンドでコピー(クローン)する。この時、GitのURLには2222番ポートが含まれることを忘れないようにしよう。
  3. ブランチのプッシュ: クローンしたリポジトリで、新しいブランチ(開発の作業領域)を作成し、ファイルに変更を加えてコミット(変更を記録)する。その後、その変更をAngusGitサーバーにgit pushコマンドで送り込む。これが成功すれば、あなたがサーバーにコードを書き込む権限を持っており、サーバーのディスクも正常に機能していることが確認できる。
  4. プルリクエスト(合併請求)の発行とマージ: チーム開発において、他の人の作業を取り込む最も一般的な方法が「プルリクエスト」(またはマージリクエスト)だ。これは、自分の開発したブランチの変更を、メインのブランチ(通常はmainなどと呼ばれる)に取り込んでもらいたい、とサーバーに申請する仕組みだ。AngusGitのWebインターフェースから、先ほどプッシュしたブランチを対象にプルリクエストを作成し、変更内容が正しく表示されることを確認する。その後、プルリクエストを「マージ」(変更を取り込む)する。マージが成功し、メインブランチに自分の変更が反映されていることが確認できれば、AngusGitを使ったチーム開発の基本的な流れが全て正常に機能していると言える。

もし、SSHではなくHTTPSを使ってコードをプッシュしたりプルしたりしたい場合は、AngusGitの「私の → アクセストークン」のページで「生成新トークン」をクリックし、git:write権限を持つアクセストークンを生成する。このトークンはパスワードの代わりとして使うことになるので、生成されたらすぐにコピーして大切に保管しよう。プッシュ時には、ユーザー名にAngusGitのログイン名、パスワードにはこのアクセストークンを入力することになる。

インストールと検証が完了した後も、AngusGitを安定して運用するためにはいくつかの知識が必要だ。AngusGitのサービスの状態は、インストールディレクトリにある./bin/angusctl.sh statusコマンドでいつでも確認できる。また、健康状態をチェックするdoctorコマンドや、サービスを起動するstartコマンドなど、日々の運用で使う便利なスクリプトが用意されている。最も重要なのは「データのバックアップ」だ。AngusGitで管理されるデータは、Gitリポジトリのファイル($ANGUS_HOME/data/gitディレクトリ)と、ユーザー情報やプルリクエストの記録などが保存されているデータベース(angusという名前のMySQLデータベース)の二つに分かれている。これら二つのデータは密接に関連しているため、必ず同時にバックアップを取る必要がある。どちらか一方だけをバックアップして復元しようとすると、データが整合性を失い、正常に動作しなくなる可能性があるからだ。

運用中に問題が発生した場合も、焦らず対処できるよう、ディレクトリの権限エラー、DNS設定の不備、サービスの起動遅延、SSH接続の失敗など、よくある問題とその解決策がまとめられているので、困った時にはこれらを参考にすると良いだろう。

まとめると、内網にAngusGitをデプロイすることは、システムエンジニアを目指す皆さんにとって、安全で効率的なチーム開発環境を自分たちで構築し、運用するための重要なスキルとなる。必要な準備をしっかりと行い、インストーラーの指示に従って設定を進め、そして何よりも「チームとリポジトリの作成、SSHでのクローン、ブランチのプッシュ、プルリクエストの発行とマージ」という四つの検証ステップを確実に実行することが、AngusGitが本当に利用可能であるかを確かめるための最終的な結論となる。これらのステップを通じて、Gitの基本的な操作から、サーバー構築、ネットワーク設定、そしてチーム開発のワークフローまで、幅広い知識と経験を得ることができるだろう。

関連コンテンツ

関連IT用語