開発者
すべてがスクリプト化できる。
すべてが統合できる。
uVersion は完全な CLI、ドキュメント化された REST API、そしてゲーム開発で使われる IDE のためのネイティブプラグインを提供します。パイプラインをコードで組むなら、そこに組み込めます。
CLI uversion
uversion.exe バイナリ(約 6 MB)はすべての VCS 操作をカバーし、あらゆるスクリプトから解析できる --json 出力を備えています。
認証情報はシステムキーリングを通じてデスクトップクライアントと共有され、二重ログインは不要です。CDC チャンキング、zstd 圧縮、.uversionignore の追跡はデスクトップクライアントとまったく同じです。
エディタープラグイン
Unreal 開発で使われる IDE へのネイティブ統合。
Plugin Unreal Engine
提供中エディターに組み込まれた Source Control Provider。UE 5.6 以降。プリコンパイル済みバイナリとして配布され、デスクトップクライアントがプロジェクトに代わりにインストールし、Unreal のバージョンごと・プラットフォームごとに更新を知らせます。展開する ZIP はありません。
- Content Browser から Checkout / Checkin / Revert
- 組み込みのビジュアル Blueprint 差分
- 10 個の組み込みルールによるチェックイン前検証
- 変更時の自動 Checkout
- Windows Credential Manager による自動ログイン
- 起動時のリコンサイル(Content/ + Plugins/*/Content/)
Plugin Rider
提供中Unreal ゲーム開発の定番 IDE、JetBrains Rider 向けの VCS 統合。
- VCS メニューから Refresh / Update / Checkin / Revert
- 内部では
uversionCLI に委譲 - ソース拡張子でフィルタ(.cpp, .h, .cs, .uproject)
- デスクトップクライアントと認証を共有
Plugin Visual Studio
Coming soonMicrosoft の IDE を使い続ける C++ 開発者のための、Visual Studio 2022 以降の VCS 統合。Rider プラグインと同じ機能を Team Explorer メニューに提供します。
Extension VS Code
Coming soonスクリプト作成、設定ファイルの編集、プロジェクトのドキュメント執筆をエディターから離れずに行うための VS Code 拡張機能。エクスプローラーのステータスアイコン、コマンドパレットからの checkout / checkin。
API REST
uVersion サーバーは JWT で認証される JSON HTTP API を提供します。クライアントのすべての操作(auth、repos、files、locks、comments、builds)は REST 経由で利用できます。
POST /api/auth/login:30 日間有効な JWT を取得POST /api/auth/refresh:パスワードを再入力せずに更新GET /api/repositories:アクセス可能なリポジトリを一覧表示POST /api/files/{repo_id}/upload-chunks:チャンク化したバイナリのアップロードPOST /api/locks/{repo_id}/acquire:ファイルをロックPOST /api/builds/{repo_id}/upload:プレイテストビルドを公開
curl -X GET https://team.uversion.io/api/repositories \ -H "Authorization: Bearer $UV_TOKEN"
{
"success": true,
"data": [
{
"id": 12,
"name": "hero-rpg",
"owner": "acme",
"current_revision": "7f3a9b1...",
"file_count": 8432,
"size_bytes": 14211938405
}
]
} CI/CD
uversion CLI は自動化パイプラインのために設計されています。--json モード、標準的な終了コード、パスワードを再入力せずに更新できる長期有効な JWT(30 日間)。
name: Nightly build
on:
schedule: [{ cron: '0 2 * * *' }]
jobs:
build:
runs-on: [self-hosted, unreal]
steps:
- name: Login + sync from uVersion
env:
UV_SERVER: ${{ secrets.UV_SERVER }}
UV_USER: ${{ secrets.UV_USER }}
UV_PASSWORD: ${{ secrets.UV_PASSWORD }}
run: |
uversion login "$UV_SERVER" --username "$UV_USER" --password "$UV_PASSWORD" --json
uversion clone hero-rpg ./project --json
uversion sync --json
- name: Build packaged client
run: |
./project/Engine/Build/BatchFiles/RunUAT.bat \
BuildCookRun -project=./project/HeroRPG.uproject \
-clientconfig=Development -platform=Win64 堅牢で高速
ネイティブなサーバーバイナリ、軽量なデスクトップクライアント(数 MB、瞬時に起動)、大容量ファイルのための大規模並列アップロード・ダウンロード。JWT 認証、標準に沿ってハッシュ化されたパスワード、機微な操作の完全な監査。自社インフラ上のサーバーは自己署名 TLS で動作し、クライアントは初回接続時に指紋を固定します(TOFU)。CI で信頼をスクリプト化するには uversion trust を使います。