Gitの構造差分

構造が重要な変更を、セマンティック差分で。

Tree-sitterによる構造差分は、TypeScript、Python、Rust、Go、Javaなど60以上の言語に対応。コードの移動や整形を大量の変更として扱わず、変更されたトークンを構造内で強調します。解析できないファイルは通常のパッチに切り替わり、その理由を明示。通常のパッチはいつでも切り替えて確認できます。

解析できる場合は構造の要約、できない場合は明示されたテキスト差分 · 実際の画面、合成デモデータ

課題:行単位の差分だけでは重要な変更が見えないことがある。

レビューでは、動作の変更、シンボルの移動、単なる整形を区別する必要があります。通常のパッチを基準としながら、セマンティック解析で大規模なリファクタリングを読み解きやすくします。

現在の範囲

FluxGitはすべての言語やファイルに完全なセマンティック差分を保証しません。構造ビューはベータであり、テキスト差分への切り替えを明示します。解析できない場合は通常のGit差分を表示します。

FluxGitでできること。

構造

構造を踏まえたレビュー

移動や整形によるノイズを減らし、変更されたトークンを構造内で強調。何千行が触られたかではなく、リファクタリングで何が変わったかを確認できます。

切り替え明示

切り替えを表示

解析できないファイルでは、その旨を示して通常のGit差分を表示。「Copy semantic diff」では構造解析できたファイル数と切り替えたファイル数を示し、要約を捏造しません。

エージェント承認

エージェントの変更を動作から確認

エージェントがmerge、rebase、resetを提案すると、承認カードは構造の要約に続き、セマンティック表示を優先したファイルごとの差分を開きます。解析できない場合は「Structural view unavailable - showing text diff」と表示します。

プライバシーと安全性。

差分には機密コードが含まれる場合があります。設定したAI・プロバイダーのフローへ利用者が明示的に送信するか、同意のうえで診断を共有しない限り、FluxGitは差分をローカルのアプリコンテキストとして扱います。

関連機能。