Hello Mike,
This problem is not a problem of OpenROAD (at least since we have the XML export format), but the one of the merging tool, which has to by an “XML aware 3-way diff and merge” tool.
Search the web for these keywords, this will give you lots of information – including the problems involved:
Merging XML is different from merging pure text – XML is structured tree-like, merging XML using pure text merging tools (like the Unix “diff”) can result in invalid XML!
Also, XML can be indented or expressed differently, the sequence of attributes of an element can be different – all this without actually being a difference in the meaning, e.g.:
<a>
<b attr=’value’>
</b>
</a>
The same can be expressed as following – in just one line:
<a><b attr=”value” /></a>
So, for an XML-aware diff tool this should not appear as a difference, Unix “diff” would consider every line as a change.
So, in connection to “SVN” you have to check what kind of diff/merge tool does it come with.
I assume it just comes with a normal text diff, which might work ok for some cases (i.e. Procedures, IncludeScripts, UserClasses), but not for more complex cases (i.e. UserFrames).
There are XML diff/merge tools available, some of them plug-in with SVN.
With the old EXP format diffing/merging was always a problem, as it contained string length for varchar data,
and also contained metadata (usernames/timestamps of creation/change), which are usually handled by a Source Management System.
Therefore it was actually impossible to merge. The XML format was developed to address those problematic items.
But it is still the responsibility of the one who merges it (no matter if done manually or by an automated tool) to provide the correct structure.
OpenROAD allows to import the XML formatted export file, provided it has the correct structure – it does not know how this file was created – using the Workbench, by merging files or by just manually create an XML file using a text editor.
HTH.
Regards,
Bodo.
--
Bodo Bergmann
Senior Software Engineer
Actian | Engineering
Accelerating Big Data 2.0
Connect With Us:
GESELLSCHAFTSANGABEN: Actian Germany GmbH ¦ Geschäftsführung: Marc Monahan ¦ Sitz der Gesellschaft: Langen ¦ Handelsregister: Amtsgericht Offenbach am Main ¦ HRB 42539 ¦ USt-IdNr: DE252449897
--
You received this message because you are subscribed to the Google Groups "OpenROAD Users Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
openroad-user...@googlegroups.com.
To post to this group, send email to
openroa...@googlegroups.com.
Visit this group at http://groups.google.com/group/openroad-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/openroad-users/f7731b5f-31ed-402b-9cbf-d22c072724b5%40googlegroups.com.
To post to this group, send email to openro...@googlegroups.com.
Probably worth pointing out (internally) we make extensive use of II_W4GL_EXPORT_INDENTED (see http://community.actian.com/wiki/OpenROAD_New_Features_per_Release/OpenROAD_5.1_New_Features) this results is larger files on disk but they are:
1. easier to visually read
2. easier to visually (manually) diff
3. easier to visually diff with pretty/gui diff tools (more on this later)
4. *sometimes* auto-merge-able with our source code control system merge tool – not always but often enough to be useful
For #3, I’ve attached a screenshot (apologies for the size) from our online code review system (we’re using https://www.reviewboard.org/, very easy to get started with and doesn’t impose a huge amount of process out of the box) showing an extract of a diff, where we rely on the indented format so that line diffs work reasonably well:

As Bodo points out line diffs are NOT as robust as an XML merge/patch tool!
Chris
--
Chris Clark
Manager, Engineering
Actian | Engineering
Accelerating Big Data 2.0
To post to this group, send email to openroa...@googlegroups.com.
Visit this group at http://groups.google.com/group/openroad-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/openroad-users/d56c9723-2d17-4c20-93b8-0cfee4105cb2%40googlegroups.com.