2022 年 39 巻 4 号 p. 4_75-4_85
背景:ソースコードに記述されたプログラム要素の履歴追跡は,プログラムの理解や修正の支援に有用である.リポジトリ変換に基づく履歴追跡手法Historageは,開発者が慣れ親しんだ履歴管理インタフェースにより細粒度の履歴追跡を行えるという特徴を持つ.課題:既存のリポジトリ変換ツールは,変換時にオブジェクトデータベースからのファイルの展開と格納を繰り返すコストが大きい,増分的な変換を行わないため変換元リポジトリからの更新を伴う開発での利用に適さない,という点で変換時間に課題がある.手法:本論文では,変換時間の削減を実現した細粒度履歴追跡向けリポジトリ変換ツールToolの設計と実装について述べる.本ツールでは,オブジェクト変換の対応関係の記録に基づくリポジトリ変換フレームワークgit-steinを利用することにより,展開と格納を抑制する.また,更新前の変換時に記録した対応関係を更新後に持ち越し,それを用いて不要な書換えを抑制することにより増分的な変換を可能とする.予備評価:既存の変換ツールと実行時間の比較を行った.また,持ち越す対応関係の種類を比較した.既存のツールと比較して4倍以上の速度性能向上を達成したこと,対応関係の持ち越しが有効であることを確認した.