ソフトウェア開発


ソースコードの管理

高速でスケーラブルな Git ホスティングと合理化されたソースコード管理。

ソースコード管理
  • Git リポジトリをホスト、ミラー、およびインポートできます。
  • クオリティゲート、プッシュ制限、保護されたブランチ、Safe Merge、および CI/CD 統合により、メインブランチを緑色に維持します。
  • コードの参照と編集、ビルドごとのコミット履歴のトレース、およびリビジョンの比較が可能です。
  • JetBrains IDE とシームレスに連携します。

ソースコード管理の詳細をご覧ください。


コードレビュー

コードレビューを開発パイプラインにシームレスに統合します。

コードレビュー
  • JetBrains IDE、Space UI、およびモバイルでコードをレビューできます。
  • マージリクエストに対して CI/CD サーバーのビルドステータスをクオリティゲートの基準として使用します。
  • Safe Merge を使用してブランチを実際にマージする前に競合をキャッチします。
  • コードの所有権やファイルのアクティビティに基づいて、適切なレビュー担当者を自動的に割り当てます。
  • 明確なターン制レビューモデルによって必要な場合にのみ対応できます。
  • コメントを一括で送信し、ワンクリックで提案を受け入れることができます。

コードレビューの詳細をご覧ください。


各種 JetBrains IDE 製品との統合

お気に入りの JetBrains IDE を Space 組織に接続すると、リポジトリ、コードレビュー、マージリクエスト、自動化(CI ビルド)、およびパッケージにアクセスできます。 組み込みの Space コードレビューが持つ性能を IDE で直接体験することも、Space UI からさらに強力なコードレビューを利用することも可能です。

Space との連携機能は 2021.1 以降の IntelliJ IDEA、2021.2 以降の PyCharm、およびバージョン 2022.2 以降のすべての JetBrains IDE にバンドルされています。

Space IDE との連携機能を使用して、以下の作業を行えます。

  • Space の Git プロジェクトリポジトリを IDE から直接クローンできます。
  • IDE からマージリクエストによるコードレビューを作成して実施し、コードスニペットについてチームメイトと議論できます。
  • コードレビューにチームメンバーを割り当ててメンションし、関連ブランチを表示できます。
  • コードレビューのチャットを確認し、リアクションを追加できます。手早く Eyes emoji でリアクションしたり、 Party parrot dancing で待望の変更に対するリアクションを示したりできます。
  • IntelliJ IDEA のハイライトおよび自動コード補完機能を使用して Space の Automation スクリプトを簡単に編集できます。
  • Git ログで自動化ジョブの進捗を追跡できます。

クラウド開発環境

作成済みのスナップショットで瞬時に IDE でのコーディングを開始

JetBrains のリモート開発ワークフローなら、ソースコードをリモートマシンに安全に保管することで、ローカルマシンと処理の遅いノートパソコンの限界を克服できます。

事前構成済みの Space Cloud 開発環境を起動して JetBrains IDE に接続し、瞬時にコーディング作業を開始できます。 プロジェクトのビルド、依存関係のダウンロード、または IDE のインデックス作成を待つ必要はありません。

プロジェクトに必要なすべてのツールとライブラリをインストールすることで環境を標準化できます。また、環境はいつでも複製できるため、オンボーディングを単純化できます。 新メンバーは何時間もかけてローカルマシンを準備しなくても、ほぼ瞬時に開発に着手できます。

Space 開発環境の詳細をご覧ください。


自動化

幅広い自動化タスクを実現するソリューションと共に、継続的デリバリーのパイプラインを整理するための最新かつ直感的な方法を提供します。

すべてを自動化

継続的インテグレーションと継続的デリバリー(CI/CD)

初期状態でもシンプルかつパワフルなCI/CDで、リアルタイムのテストレポート、並列実行、ローカル環境での再現機能を提供し(計画中)、Gradle、Dockerなどの主要な技術スタックに対応しています。

継続的インテグレーションと継続的デリバリー

デプロイ

デプロイでは、本番環境やステージングサーバー、アプリケーションストアなど、デプロイ環境へのソースコード変更の配信を追跡できます。 デプロイは、Space Automation、JetBrains TeamCity、GitHub Actions などの任意の CI/CD ツールと合わせて使用できます。

コミットステータス API

コードとして構成を記述

Space では自動化をスクリプトを使用して構成することができます。 Space の自動化 UI はスクリプトの結果(ログ、テスト、アーティファクト)を可視化するのに使用されます。 Space は Kotlin ベースの DSL をスクリプト言語として使用しています。また、将来的に YAML のサポートも計画しています。

他の Space モジュールとの統合

自動化スクリプトで、Space HTTP API クライアントにアクセスできます。 そのため、他の任意の Space モジュールを使用し、チャットへのメッセージ送信、記事の悪性、チームディレクトリへのアクセスなどを実行できます。

Space Cloud の実行環境

  • Space Cloud インフラストラクチャで実行する Docker コンテナー。
  • 自己ホスト型マシンで実行する Docker コンテナー。
  • Linux、Windows、および macOS の自己ホスト型マシン。
  • Linux の Space Cloud インフラストラクチャの仮想マシン。
  • Windows および macOS の Space Cloud インフラストラクチャの仮想マシン。 計画中

Space On-Premises の実行環境

  • Kubernetes クラスターで実行する Docker コンテナー。
  • 自己ホスト型マシンで実行する Docker コンテナー。
  • Linux、Windows、および macOS の自己ホスト型マシン。

外部ツールとの統合

以下のような外部のツールやサービスに接続する各種 API にアクセスできます。

  • api.docker:Docker イメージのビルド及び公開用。
  • api.gradle:Gradle を使用したテストのビルド及びレポート用。

このリストを拡張し、.NET、npm、Maven、Bazel などを含める計画をすでに進めています。

TeamCity との統合

Space を強力な継続的インテグレーションとテスト報告機能を提供するツールである TeamCity と統合すると、以下が可能になります

  • ビルドステータスを Space で公開する
  • TeamCity で Space アカウントを使って認証する
  • Space リポジトリからプロジェクト、ビルド構成、VCS ルートを作成する

パッケージ管理

自分の CI/CD パイプラインで、あるいはご利用のローカルマシンからパッケージリポジトリを作成・使用できます。 Container、Maven、NuGet、Python、Composer、Dart、Rust、npm、および File の各リポジトリを使用し、製品間でパッケージとファイルを共有できます。

パッケージ管理

アプリの配布

コンテナレジストリを使用してアプリをコンテナイメージとして配布し、それをデプロイ中に使用することができます。

パッケージ依存関係

必要なパッケージ依存関係を必要な限り保持できるよう、ローカルリポジトリを使用してパッケージの保存および使用をプライベートに行うことができます。また、ミラーリポジトリを使用して Maven Central などの上位のリポジトリをミラーリングできます。

パワフルな検索機能

パッケージの詳細を検索・表示し、それがどのように生成されたのかを把握できます。

パッケージの脆弱性分析 計画中

一般的な脆弱性の問題に対してパッケージを自動的にチェックするよう Space を設定できます。 このようなチェックはパッケージを本番環境に公開する前に特に役立ちます。

リポジトリの自動クリーンアップ

不要になったパッケージの自動削除を構成して、リポジトリのサイズを削減できます。 また、重要なパッケージを削除対象外にする条件を設定できます。