@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix an issue with Diffusion's display of copied files in Git

Summary: If a change copies some file `A` to `B` and also edits `A`, we currently record this as an indirect change and don't show the edits to `A` in the diff. Instead, record these as direct changes.

Test Plan: Created two commits, one which copied `A` to `B` without modifying `A` and one which copied `A` to `B` and modified A. Viewed both commits in Diffusion. The unmodified commit did not show `A`, and the modified commit did (with the correct changes).

Reviewers: btrahan, vrana

Reviewed By: vrana

CC: champo, aran

Differential Revision: https://secure.phabricator.com/D3120

+5 -1
+5 -1
src/applications/repository/worker/commitchangeparser/PhabricatorRepositoryGitCommitChangeParserWorker.php
··· 190 190 unset($move_away[$change_path]); 191 191 } else { 192 192 $change_type = DifferentialChangeType::TYPE_COPY_AWAY; 193 - $is_direct = false; 193 + 194 + // This change is direct if we picked up a modification above (i.e., 195 + // the original copy source was also edited). Otherwise the original 196 + // wasn't touched, so leave it as an indirect change. 197 + $is_direct = isset($changes[$change_path]); 194 198 } 195 199 196 200 $reference = $changes[reset($destinations)];