From: Robert Anderson <[EMAIL PROTECTED]>
> I have not tried, but I think this would not work out: > 1) Have a project with 'foo' directory. > 2) Branch it > 3) On one branch rename the 'foo' directory to 'bar' > 4) On another branch create file 'foo/baz' > 5) Merge. > Now correct behaviour would be to place the 'baz' file in the renamed > directory. I think your definition of "correct behavior" is potentially debatable, but I agree that this is probably the best definition and I did confirm that it does not work like that. The changeset records the addition of the file using named path elements, not the logical identities of the path elements. Tom, can you comment on this? This seems like a pretty fundamental design point. When a file or directory is added, the changeset indexes are *supposed* to include paths and ids for the parent dirs. `dopatch' is *supposed* to use that information to add the file in the correct place in the inexact patching case described in the quoted stuff above. Initially, `larch' botched that case. Then I fixed that, mostly. I *thought* I had gotten this case right in `tla' to start with but either I didn't, or it got broke between the early `tla' and the last couple of releases. Either way: the changeset is supposed to have enough information for this case; the design leaves plenty of room for that information; `dopatch' is supposed to figure this out --- one of those `supposed to'-s isn't actually the case. That's an inexact patching bug. It's not a design bug. There's also a project bug: this bug got lost in the shuffle over the past several *months*, it seems. It's not lost now and will be fixed. -t _______________________________________________ Gnu-arch-users mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnu-arch-users GNU arch home page: http://savannah.gnu.org/projects/gnu-arch/
