Page MenuHomePhabricator

Auto-closing a merged feature-branch adds a final diff to the revision which includes only the first commit in the merge range
Closed, DuplicatePublic

Description

This seems like a bug in Diffusion which causes the final diff created by the auto-closing to be wrong.

Our workflow is pretty straightforward:

  • Develop on a feature branch
  • arc diff
  • [update and repeat arc diff if necessary]
  • arc land

We're using git with immutable history, which means arc land merges the feature branch into master.
Diffusion is configured to auto-close revisions appearing in master, so once the feature branch is merged, the revision gets auto-closed and a new diff is created for it.

However, for some reason this autoclose diff only considers the first commit being merged (i.e. the first commit in the feature branch) rather than the whole set. Asking Diffusion to diff between the previous-to-last diff and the auto-close diff (frequently referred to as "changes prior to commit") makes it look as if before closing the revision, the author undid pretty much everything they did except for the first commit.

This is confusing. I'd expect the auto-close diff to pick up the merge commit and contain all the changes merged in it, so that diffing it vs. the previous-to-last diff of the revision would indeed yield all the changes made after the last manual diff and before the actual merge/push.

Event Timeline

Avish raised the priority of this task from to Needs Triage.
Avish updated the task description. (Show Details)
Avish added a project: Diffusion.
Avish added subscribers: Avish, epriestley.
Avish renamed this task from Auto-closing a merged feature-branch adds a final diff to the revision which includes only the first commit in the merge range. to Auto-closing a merged feature-branch adds a final diff to the revision which includes only the first commit in the merge range.Apr 17 2014, 10:03 AM
Avish updated the task description. (Show Details)