Question

I am currently using CVS (not my choice) and have several branches. I'm trying to merge two branches, but a deployment project file has conflicts that I can't resolve without spending a LOT of time. A trivial change to a project file results in drastic changes to that project file - thanks to GUID changes I guess (making a project file change, getting a clean copy and making the same change seems to yield two fairly different project files)

So I need to determine all the actual changes that were made so I can replicate them by hand (as the change logs aren't detailed enough).

Are there any project file diff tools that take changed GUIDs / positions into account?

Was it helpful?

Solution

You could use an external diff tool to resolve the differences first, then report the real differences (and ignoring the same GUIDs in different positions).

For instance, WinMerge is able to detect similar lines in different places between two files.

The Location pane can indicate difference blocks that are moved.
Moved blocks are two sides of a difference that are in different locations. Moved blocks are indicated by the Moved and Selected Moved difference colors (configurable in WinMerge Options) and by lines connecting their locations in the left and right location bars.

alt text
(source: winmerge.org)

If you ignore those moved blocks (which is the default setting), you can focus on the actual differences and report the modification you want.


If those GUIDs keep changing, you can define a regex pattern helping WinMerge to ignore those GUIDs (like it can ignore by default all whitespace), helping it to focus on the rest of the document.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top