threads / discuss / 30934

corner case with rename tracking and reverts

Subject: corner case with rename tracking and reverts

## tl;dr

2 messages between Jul 2, 2012 and Jul 2, 2012.

replies: 1people: 2as markdown or json

Torben Hohn· Jul 2, 2012, 12:47 UTC · lore
Hi...
i just came over some issue, where the rename tracking got confused.

I wanted to revert a commit to a moved file. But because it touched an empty file, this seems to have confused the rename tracking. (there were a few empty files there)

Attached is a shell script, that reproduces the issue.

The Problem is, that bla2 shows up in omg3, when "bla2 empty" is reverted.

This was produced with git 1.7.10 from debian.
-- 
Mit freundlichen Grüßen
Torben Hohn

Linutronix GmbH

Standort: Bremen

Phone: +49 421 166 73 41 ; Fax.: +49 7556 919 886
mailto: torbenh@linutronix.de
Firmensitz / Registered Office: D-88690 Uhldingen, Auf dem Berg 3
Registergericht / Local District Court: Freiburg i. Br., HRB Nr. / Trade
register no.: 700 806;

Geschäftsführer / Managing Directors: Heinz Egger, Thomas Gleixner
Jeff King· Jul 2, 2012, 21:07 UTC · re: Torben Hohn · lore

Re: corner case with rename tracking and reverts

On Mon, Jul 02, 2012 at 02:47:54PM +0200, Torben Hohn wrote:
Show 5 quoted lines
> i just came over some issue, where the rename tracking got confused.
> 
> I wanted to revert a commit to a moved file. But because it touched an
> empty file, this seems to have confused the rename tracking.
> (there were a few empty files there)

Yeah, it happens. When there are multiple identical sources (which happens often with empty files), we try to disambiguate using some heuristics on the filename, but they are not always correct.

As of v1.7.11, git will explicitly avoid auto-merging across renames of empty files. Instead, you'll get a modify/delete conflict and be given the opportunity to sort it out yourself.

-Peff

← back to recent threads