Blame calculations

Blames are the annotations available when viewing source files or diffs (in both Fisheye and Crucible) that allow you to determine who last modified a line of code and in which revision:


Blame calculation

Fisheye and Crucible calculate blames from the internal repository cache during indexing time. On rare occasions that may not be possible. In such cases Fisheye and Crucible have a mechanism to retrieve blame data directly from the repository, either during indexing time, or when requested by browsing source files and diffs. However, as contacting the repository can be an expensive operation and may noticeably affect indexing time and/or responsiveness, this mechanism is off by default for both cases since 3.10.

Here are the system properties controlling blame calculations; the default values should be appropriate for most cases:

システム プロパティ説明 Available since既定値
fisheye.blame.calc.enable

Controls whether blames are calculated during indexing.
This property is enabled by default. Disabling it means blames are not calculated during indexing and will be missing (or could optionally be retrieved at request time).

Note that blame calculation during indexing is disabled if the Store Diff Info setting is disabled. See Store diff info.


true
fisheye.blame.scm.fallback.enable

Controls whether blame data is retrieved from the SCM during indexing (when blame couldn't be based on ancestors).
This property is disabled by default to avoid performance overhead. This means some indexes may lack blames. In such cases, the blames can either be fetched from SCM at request time (if

fisheye.enable.request.blame.calculation

=true) or they will be missing from the source file and diff views.
Enabling this property means SCM will be contacted (possibly multiple times) during indexing. This increases the indexing time, but ensures all blames are readily available at request time.

3.10.0false
fisheye.enable.request.blame.calculation

Controls whether for all missing blames (when blame couldn't be calculated or retrieved during indexing) Fisheye and Crucible will retrieve blames from the repository. This happens during the web request - when users request blame data when viewing the file or diff.

3.9.2true


Missing blame

When blame data is not available, the Author and Revision columns display "n/a" like this:


Blames may be not available:

  • When indexing of a particular revision has not yet completed. This is a temporary state and blames should appear when indexing has finished.
  • When the blame calculation failed during indexing and the fisheye.enable.request.blame.calculation is set to false (the default value).
  • If the repository configuration property Store Diff Info setting is disabled. See Store diff info.
  • In patch files uploaded to the review. See Creating patch files for pre-commit reviews
最終更新日 2019 年 7 月 5 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.