Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Thoughts: file version control inside solidworks (subversion)

298 views
Skip to first unread message

Johnny Geling

unread,
Jun 24, 2004, 5:13:08 AM6/24/04
to
Hai,

I have made thought about version control. In software development I use
an IDE (Eclipse) with a version control build-in. Actually I prefer the
subversion pluggin.

Wouldn't it be great if there would be a IDE-CAD with the abillity to
work on CAD files (solidworks) and also text file for documentation.
Integrated in this IDE-CAD should be some kind of version control.
Subversion would be great. Why into a IDE-CAD? Well building the system
as a workspace with plugins it could benefit from the ability other
plugins or program give to the version control system. The main feature
would be compare documents. In this case assemblies, parts and drawing.
When comparing tools are availible from the native application the
version control pluggin could use these tools. This is off course
extremly important when dealing with binary files or feature structured
files. Offcourse the xml concept from Phillipe could play some role.

Just simple thoughts.


Johnny

rocheey

unread,
Jun 24, 2004, 12:04:46 PM6/24/04
to
>> Wouldn't it be great if there would be a IDE-CAD with the abillity to
>> work on CAD files (solidworks) and also text file for documentation.

Who knows? Maybe the Solidworks Gods have heard you...... ;)

Johnny Geling

unread,
Jun 24, 2004, 5:08:01 PM6/24/04
to

We will see what 2005 will bring us

Johnny

Vinodh Kumar M

unread,
Jun 25, 2004, 6:59:50 AM6/25/04
to
> extremly important when dealing with binary files or feature structured
> files. Offcourse the xml concept from Phillipe could play some role.
>
> Johnny

That really would be the best. An "XML Feature" (like the "Macro
Feature") added as one of the features... One could potientially store
any information they wanted. It would be customizable and there could
be an interface (preferrably web based) that could be used to extract/
present information... revisions/ trees (like the one in dynabits) you
name it, it could all be done!

I kind of thought about this one and dropped it when I started work on
swCP3.

mvk

Philippe Guglielmetti

unread,
Jun 25, 2004, 10:06:40 AM6/25/04
to
"Vinodh Kumar M" wrote:
> That really would be the best. An "XML Feature" (like the "Macro
> Feature") added as one of the features... One could potientially store
> any information they wanted. It would be customizable and there could
> be an interface (preferrably web based) that could be used to extract/
> present information... revisions/ trees (like the one in dynabits) you
> name it, it could all be done!

Right. XML is the way. Check www.cadml.org and use it ! It is free !
You can easily extract any information you need from your models from the
generated XML, and can visualize it as you like by using XSLT.

And if the "SolidWorks Gods" have an idea on how to embed documents in their
Holy Files, let's hope than enough prayers will let them create an API for
this too. Pray with me : "Please SolidWorks protect us from Bill Gates'
Structured Storage and solve SPR 226951 and SPR 226952". Even if you don't
understand every word, it may work (just like prayers...)

Now seriously, version control through Subversion or CVS is not a good idea
for SW files becuse they contain too much binary data and can't benefit from
the efficient "diff" function those source code version control use.

Now if you consider that www.ecocom.com 's EcoSqueeze can delete all this
heavy 3D Parasolid info you don't need in archives (Structured Storage...)
and that many/most design information can be stored in an XML file, version
control becomes realistic. However, CVS or Subversion handle XML as text
and can't detect that <thistag a="1" b="2"/> is the same as <thistag b="2"
a="1" />.
We would need an XML-specific version control system, or plug an XML-diff
module in Subversion...

The trouble is, days are only 24h long and I have more ideas than money :-(

--
Philippe Guglielmetti - www.dynabits.com


Sean-Michael Adams

unread,
Jun 25, 2004, 4:54:46 PM6/25/04
to
> The trouble is, days are only 24h long and I have more ideas than money :-(

I have no pity for you!

Sadly, Philippe, I have a worse condition - more ideas than brains.

:)

SMA

Johnny Geling

unread,
Jun 25, 2004, 6:59:41 PM6/25/04
to

Should we go to the 2005 beta forum?

Beside your example how would you deal with file interrelations? Would
you do that like is done in software dev with the include? But what if
Solidworks provide a diff functionality which could be plugged in into
subversion? That is what would be intresting.

Johnny

Markus Wankus

unread,
Jun 25, 2004, 8:05:23 PM6/25/04
to
Johnny Geling wrote:

> Philippe Guglielmetti wrote:
>>
>> Right. XML is the way. Check www.cadml.org and use it ! It is free !
>> You can easily extract any information you need from your models from the
>> generated XML, and can visualize it as you like by using XSLT.
.
.

>> control becomes realistic. However, CVS or Subversion handle XML as text
>> and can't detect that <thistag a="1" b="2"/> is the same as <thistag
>> b="2"
>> a="1" />.
>> We would need an XML-specific version control system, or plug an XML-diff
>> module in Subversion...


Well - you could read the XML data into objects with oh...I
dunno..Python (my favourite language), and test equality for this case
quite easily - so this is doable (in any language, but Python rocks).

>
> Should we go to the 2005 beta forum?
>
> Beside your example how would you deal with file interrelations? Would
> you do that like is done in software dev with the include? But what if
> Solidworks provide a diff functionality which could be plugged in into
> subversion? That is what would be intresting.
>

References to other objects is also doable in XML. There is a cool XML
Python pickle (Python's notion of object persistence - like Java's
serialization) module out there:

http://freshmeat.net/projects/gnosisxml/

It handles references to objects and everything. Quite cool. Something
along these lines could be implemented. Just give Philippe another 12
or so hours per day and a pile of money. ;o) Heck - I'd go for that too...

FWIW - I am actually using Subversion for revision control with SW and
it seems to work so far - but it is only for a small repository at a
small company. It definitely would not scale at all for a *real* 3D
design shop. I never thought about using ecosqueze however - this could
be triggered automatically on check-in (Subversion is cool this way) and
would probably save a whole pile of disk space.

Markus.

Vinodh Kumar M

unread,
Jun 25, 2004, 8:49:28 PM6/25/04
to
"Philippe Guglielmetti" <ne...@dynabits.com> wrote in message news:<40dc3161$0$26626$5402...@news.sunrise.ch>...

> Right. XML is the way. Check www.cadml.org and use it ! It is free !
> You can easily extract any information you need from your models from the
> generated XML, and can visualize it as you like by using XSLT.

Yeah for that purpose, it's great, but what we require is an
"extenstion" that will store textual information along with the model
information.

An "XML Feature" would be an excellent, customizable method of
documenting a design.

While we can wait for SW to get around to giving us this, how much
work would it be to use a "Macro Feature" to do this?

mvk

Vinodh Kumar M

unread,
Jun 25, 2004, 11:37:07 PM6/25/04
to
Please ignore my previous post, I misunderstood the discussion...

mvk

Philippe Guglielmetti

unread,
Jun 26, 2004, 3:43:00 AM6/26/04
to
"Markus Wankus" wrote:
> FWIW - I am actually using Subversion for revision control with SW and
> it seems to work so far - but it is only for a small repository at a
> small company. It definitely would not scale at all for a *real* 3D
> design shop. I never thought about using ecosqueze however - this could
> be triggered automatically on check-in (Subversion is cool this way) and
> would probably save a whole pile of disk space.

yes, it would, but you have to take care about parts that have imported
geometry or face/edge specific information (colors, names) which would be
lost...
We should ask Thilo (ecocom.com) to make his great tool a bit more
intelligent.

0 new messages