Levelupsoft Inc. のソフトウェア製品

会社のコードを
他社のサーバーに置かない

SSemRepo は会社が自ら運用するコードリポジトリです。リポジトリ・課題・コードレビュー・Wiki が一式で届き、開発者は使い慣れた git コマンドをそのまま使います。

2
Git と Subversion を同じ画面で
10
製品画面の対応言語
100%
自社インフラの中

なぜ自社ホスティングか

コードを預けることは会社を預けることです

外部のリポジトリはすぐに始められます。その代わり、製品の設計と履歴、誰が何をいつ直したかが、すべて他社のインフラに積み上がります。

最も重要な資産が外にあります

ソースは会社が作ってきたもののすべてです。消したくても自分で消すのではなく消してほしいと頼むことになり、バックアップがどこまで残るかは利用規約が決めます。

回線が切れれば開発が止まります

外部接続が塞がれた社内網・工場・現場では clone 一回すら通りません。規定ではなく物理的に届かない場所があります。

監査で答えるものがありません

金融・医療・公共の審査で「そのソースはどこに保管されていますか」と問われたとき、外部事業者の規約を示す以外に出せる答えがありません。

製品

リポジトリを渡して終わりにしません

コードを置く場所と、そのコードについて話す場所が別々だと、結局もう一つ道具を買うことになります。SSemRepo は三つを一式で出します。

01

リポジトリ

git clone・push が HTTPS でそのまま通ります。ブラウザーでファイル・コミット・差分を読み、移行してきた Subversion リポジトリも同じ画面で読めます。

02

共同作業

課題・マイルストーン・ラベル・担当者、プルリクエストとコードレビュー、掲示板と Wiki。プロジェクト一つの中で完結します。

03

運用

グループと権限、登録の承認、メール通知と書式、サイトロゴやバックアップまで管理画面で変えられます。直すために再配備しません。

機能

開発チームが毎日触れるもの

Git リポジトリ

HTTPS の clone・push、ブランチとタグ、コミット一覧と差分、ファイル閲覧とウェブ編集、フォーク。

Subversion も一緒に

移行した svn リポジトリのリビジョン・ファイル・差分を git と同じ画面で読めます。古い資産を捨てる必要はありません。

課題とマイルストーン

ラベル・担当者・マイルストーン、親子の課題、添付とコメント、そして見える範囲だけを返す検索。

プルリクエスト

ブランチ間の差分、ファイルごとのレビューコメント、衝突の表示、マージと自動クローズ。

掲示板と Wiki

お知らせは掲示板に、規約と設計は Wiki に。課題と同じ編集画面・同じ添付を使います。

10言語

製品画面が韓国語・英語・日本語・中国語・ドイツ語・ロシア語・フランス語・ベトナム語・インドネシア語・スペイン語で表示されます。

画面

見慣れた場所に見慣れたものがあります

新しい道具を覚える時間こそ導入の本当の費用です。画面は開発者がすでに知っている配置に従います — 左にプロジェクト、中央に作業、上にコード。

画面の説明

  • 左の一覧は自分が属するプロジェクトです。非公開プロジェクトは権限のある人にだけ見えます。
  • 中央は課題の一覧です。ラベル・担当者・マイルストーンで絞り込み、検索は見える範囲の中だけを探します。
  • 上のタブがコード・課題・プルリクエスト・掲示板・Wiki です。どのタブを使うかはプロジェクトごとに決めます。

コマンドライン

画面でできることは、コマンドでもできます

人が押して進める仕事と、機械が繰り返す仕事は別物です。SSemRepo は専用のコマンドライン道具を一緒に出します — スクリプトから呼び、ビルドの後ろに継ぎ、コーディングエージェントに任せられます。

画面にあるものはほぼすべて

課題・掲示板・Wiki・プルリクエスト・マイルストーン・グループ、サイト管理まで。結果は人が読む表でも、機械が読む JSON でも受け取れます。

一台で複数のアカウント

アカウントをプロファイルに分け、ディレクトリごとにどのアカウントで働くかを結び付けます。その下では自然とそのアカウントになります。

git の認証まで

git 資格ヘルパーとして繋がるので、push のたびにパスワードを聞かれません。保存した秘密の値はその機械に結び付けて暗号化され、ファイルだけ別の機械へ移しても開きません。

コーディングエージェント向けに

AI コーディング道具にそのまま繋げる利用指針を同梱します。「この不具合を課題に上げて」がそのまま実行されます。

この画面の説明

  • プロジェクトは <所有者>/<名前> で指します。よく使うものは既定値にして省けます。
  • 作ると番号が返ります。その番号でコメントし、状態を変え、担当者を付けます。
  • 閲覧も同じ形です。一覧を絞る条件は画面の絞り込みと同じものを使います。

構成

ひと目で分かる配置

ブラウザーと git クライアントが同じアドレスに入ります。ウェブサーバーが受けて Tomcat に渡し、履歴は PostgreSQL に、リポジトリのファイルは自社のディスクに残ります。

Levelupsoft Inc.開発者ブラウザー · git · svnウェブサーバーHTTPS · リバースプロキシSSemRepoJava 21 · Tomcat 11PostgreSQL課題 · 権限 · 履歴リポジトリのディスクgit · svn · 添付社内メールSMTP 通知

図の説明

  • 左から右へ: 開発者 → ウェブサーバー → SSemRepo → 保管先。すべての矢印が会社の境界の内側で終わります。
  • 実線は人が使う道です。ブラウザー画面も git の clone・push も同じ 443 番ポートから入ります。
  • 下の枝はファイルです。リポジトリと添付はデータベースではなく自社ディスクにそのまま置かれます — バックアップはファイルのコピーです。
  • 破線は通知です。社内 SMTP からのみ出ていき、送れなかったときに送ったとは言いません。
  • 外へ出る矢印がありません。外部接続が塞がれた網でもそのまま動きます。

移行

使ってきたリポジトリをそのまま移します

新しく始めるチームより、すでに積み上げてきたチームのほうが多いものです。今お使いの道具にある git・svn リポジトリと課題・添付を移す手順と道具を一緒にお渡しします。

データベース

今の道具のデータベースから課題・コメント・履歴を読み出し、PostgreSQL へ移します。値を文字列として置き換えるのではなく、ドライバーで読んでそのまま入れます。

リポジトリと添付

git・svn のリポジトリとアップロード済みファイルはディレクトリごと複写します。リポジトリ自体はどの道具から来ても標準なので、手を入れる所がありません。

アカウントと権限

利用者・グループ・役割も一緒に来ます。パスワードの方式が合えばそのまま通るので、全員が登録し直す必要はありません。

並べて確かめる

旧システムを止める前に、同じ資料を二つの画面で見比べます。戻れる場所を残したまま移します。

移行の規模と日程はリポジトリの数とディスクの大きさから見積もります。ご相談いただければ現在の環境を一緒に確認します。

導入

設置から最初の push まで、四段階

  1. 1

    サーバーを立てる

    コンテナ二つ — アプリケーションと PostgreSQL。決めるのはリポジトリを置くディスクだけです。

  2. 2

    スキーマと最初の管理者

    表を作り、初期データを入れてから管理者アカウントを作ります。手引きに書かれた命令をそのまま打ちます。

  3. 3

    ドメインと証明書

    会社のドメインを向け、HTTPS を整えます。git が通るので、本文の大きさ制限だけ緩めておきます。

  4. 4

    チームを迎える

    登録の方式を決め、グループとプロジェクトを作ります。移行が必要ならその場で旧資料を取り込みます。

技術

長く直せるように作りました

Java 21 · Tomcat 11

ありふれた Java サーバー一つで動きます。運用チームがすでに知っている方法で起動し再起動します。

PostgreSQL · 素の JDBC

重い対応付けの層を挟まず SQL を直に書きます。遅い問い合わせの原因は問い合わせの中で見つかります。

Svelte 5 の画面

最初の画面が軽く出るよう受け取る量を減らしました。フォントも社内網から直接配ります。

1,700 件を超える自動検査

模擬ではなく実際のサーバーに繋ぎ、プロジェクトを作り push し PR を出すところまで回して確かめます。

SSemRepo の導入をご検討中ですか

チームの規模と今お使いのリポジトリを教えていただければ、合う構成をご提案します。試験導入と移行もお手伝いします。

お問い合わせ

halo@levelupsoft.com+82 10-8472-4070

Levelupsoft Inc.