Questions about using Subversion + SDE

Greetings,

I’m working since a couple of days with the Visual Paradigm SDE version for Eclipse.
Using the Subversion plug-in for Eclipse, my project shall be edited by severel persons.

First thing I did was creating a Java-Project and importing it to the repository location using the SVN plug-in.
Next step was opening SDE-EC and creating some diagrams like use-case-diagrams and a glossary-grid.
After saving the SDE-EC Project, a new folder had been created being called “vpproject”. It contains the .vpp file.
It also contains another folder “diagrams” where the diagrams are saved like “use-case-diagram1.vpucd”.

So whenever I update my project from repository and only change the diagram or the glossary-grid, I can’t immediately commit the project like I was used to do whithout Visual-Paradigm (only java-based projects), because it said there were no changes made.

I have to manually save the project via ‘File-> Save SDE-EC Project’, then selecting the project in the package explorer and refreshing the project. Then it notices the changes and I can commit the changes.

So my first question is, whether its possible to auto-save or auto-refresh the package-explorer to notice the changes at once? (Avoiding the manual part)?

Next thing I tried was to use the SVN-support integrated in SDE (Teamwork -> Open Teamwork Client).
But the problem I encountered was, that I wasn’t able to checkout my project. I tried to import the project to another repository etc. but nothing worked.
When I created a new project in Eclipse (not a Java-project!), creating a .vpp file with SDE-EC , I was able to import this project to a repository and checkout the project aswell without any problems.
That means it was possible to commit, update within the SDE-EC Modeling-Perspective. I also noticed the .dif and .mmh files in this repository.
Those files were missing in the repository of the existing java-project mentioned above.

Second question here: Why isn’t it possible to checkout the existing project in order to use the commit, update functionality?

Does it matter what way of synchronizing your project with the repository you choose (via the eclipse-based SVN function (team-> commit) or via the SDE build-in SVN support) ?

Thanks in advance,
Gunvald.

Software:
-Eclipse Galileo (current version)
-Visual Paradigm Standard Edition (current Version)
-Subversion (current version)

Hello Gunvald,

Thank you for your message. The structure of our project file are far more complex then source code, and eclipse SVN plug-in had no idea on how our project work. Therefore the eclipse SVN plug-in can only tread the project as a binary resource file.

In order to perform team operation on the SDE project (.vpp file) with SVN, all the team operations (commit, update…) related to the SDE project need to perform via the Teamwork Client. You have to import the project to your SVN repository using the create project button inside Teamwork Client. This will allows you to import your existing SDE project to SVN server. Once you imported the project to SVN server via Teamwork Client, the .dif and .mmh file will be generated automatically, and you can perform team operation on it afterward.

If you project is not import to SVN server via Teamwork Client or using the Teamwork Server Admin page, then we don’t know it is a valid teamwork project (miss out those info files like dif or mmh, which are necessary for us), therefore, Teamwork Client will not able to perform any team operation on it.

Now go back to your first question, since the team operation is handle by us, you don’t need to press the save button manually after making modification. After you modify the diagram, you can simply press the commit button in Teamwork Client to perform commit. Changes will be saved automatically during the commit process (but still, it is a good practices to press save before commit).

Hope this can answer your questions, and feel free to contact me if you need any help.

Best regards,
Rain Wong

Hello again,

First of all, thanks for your fast responding.

To topic:
It took me about 3 hours of testing to notice why I could’t checkout my project from repository using the SDE-EC Teamwork Client.

Imagine you already got a Java project within a subdirectory exists, called ‘vpproject’. This folder contains all the Visual Paradigm-
related files such as .vpp and the folder ‘diagrams’. Until now, you shared the project using eclipse svn as mentioned in the post above.
That means in your repository are all the files as they are stored on your harddisk (the project as binary resource file(s)).
This is our starting point.
Now, considering to use the Teamwork Client from SDE plugin instead of using the eclipse thing, which steps are to take?

What I did so far was:

Checking out the project with eclipse.
Deleting the repository-folder ‘vpproject’ within the VP-related files were. So at this point the repository contains no visual-paradigm files.
Next step was to re-import the project into repository by using the Teamwork Client from SDE plugin. Then, the visual paradigm files were located in the repository again.
After that, I tried to checkout the project, pressing ok when the dialog popped up “…overwrite your existing project” but without success.

No error or another dialog popped up, the status of my project still was “not checked out.”

So assuming any conflicts in the overwriting process, I deleted all the visual paradigm related files manually on disk (local). At this point, the local project only contained the java files.
Another try to checkout the project was successful, however it worked now to overwrite the existing project.

For testing purposes I created a new diagram, saved the project and committed the project to repository and it worked fine.

But what happens if you have to re-checkout the whole project, that means the java and the visual-paradigm project?

After deletion of the whole local! project, I checked out the project using the eclipse SVN plugin (because I also need the java stuff).
I got the identical content that is stored in the repository.
It seemed to work, but after creating a new diagram and the attempt to commit those changes, I received an ‘SVN update error’.
This error is always popping up when changing any diagram or adding a new one and trying to commit.

Hope someone can help me…

Is it right that the commit-process of the Teamwork Client merges the files that are locally stored in the ‘diagrams’ folder directly into
the .vpp file?
Do I have any disadvantages using the eclipse SVN plugin instead of the Teamwork Client of Visual Paradigm SDE beside more files
to commit/save?
It seems to take a lot of work and time to switch to Teamwork Client so I’m considering to further use the Eclipse SVN plugin in its ‘manual way’, but I’m open to conviction.

Thanks in advance,
Gunvald

Hello Gunvald,

As I mention the eclipse SVN plug-in got no idea how the .vpp file works, it can only tread the file as whole and commit as a binary resource. It cannot help you to detect the change of the models, resolve conflict between different user’s modifications, etc… That means every commit is simply copying the latest version of your project to server, instead of merging the changes done by multiple users.

In order to perform the real team operation on the UML model, the only way is using the Teamwork Client. The Teamwork Client will check your modification, and patch it to the models in server. And of course, it will helps you to detect conflicted modification and prompt you to fix it up before commit.

As your vpp file is stored inside your Java project in the repository, I suggest you can simply add the .vpp file to the ignore list of your eclipse SVN plug-in. In this case, checkout your Java project will not include the .vpp file. And you can then checkout the vpp file separately using the Teamwork Client.

You can always launch the Teamwork Client by right click on your Java project in Package Explorer, and then select SDE-EC Project > Open Teamwork Client. And it should only take little time to open Teamwork Client (except the first time without launching SDE). May I know how you launch Teamwork Client (and feel it is slow)?

Look forward to hear from you.

Best regards,
Rain Wong

Hello,

Sorry for expressing myself a little bit unclear. I didn’t mean the teamwork client is slow in its process, it just took me a lot of time to get the clue on how to work with this client.

Here’s what I did today:

Creating a new java project
Opening SDE-EC and creating a new use-case diagram
So far I got a java-based project and a visual paradigm diagram.

Sharing project with repository and before committing, adding the whole ‘vpproject’ folder which contains all the visual paradigm files to SVN-ignore (in eclipse).
So my repository only contains the java-based files.

Next step is to open the Teamwork Client and import the project into repository (I chose not to create an extra folder).
In order to make use of commit and update, I checked out the project.

To check the functionality of the commit operation, I created a new diagram and committed the changes with success.

Important question: What do other teammembers have to to in order to get the whole project (checkout)?

I did the following:

Checking out the project in Eclipse’s SVN
Starting SDE-EC and opening the Teamwork Client
Assign the project in repository to my local project (Project → Manage Project) and checkout. (it worked ;))

Concerning the ‘SVN update error’ mentioned in my last post, I tried to create and commit another new diagram.
Successfully.

Did I miss anything?

I think SVN-ignoring the whole folder did it :wink:

Thanks in advance,
Gunvald

Hello Gunvald,

Your steps on checkout and associate the vpp to your eclipse project are correct, and all your colleagues should do in the same way. And after you checkout the project in this way, you should able to perform commit or update without any problem. Would you mind send me the vp.log file (inside the eclipse installation directory) to have a look about the update problem you experienced?

Best regards,
Rain Wong

Hello Rain,

Can you tell me your E-Mail adress so I can send you the vp.log file?

Sorry about the late answer, I’m very busy at the moment.

Gunvald.

Hello Gunvald,

Sure, actually you can simply sent to support-team@visual-paradigm.com, and I’ll receive it. Please include the forum URL in your message so that we can associate your case easier. Thanks!

Best regards,
Rain Wong

Hello Rain,

Mail is sent to support,
did you receive it?

Yours sincerely,
Gunvald

Hello Gunvald,
Thank you for your email. I have checked that there is no big problem in your log. There is one more think you need to aware. Please separate the Java project and VPP folder. Following are suggestion
Root
/MyProject/ (contains all Java source files and resources)
/MyProjectDesign/ (contains vpp project files).

Hello Angus,

Thanks for having a look at my log file.

Could you explain me what’s the point in separating the java project and the VPP folder?
At the moment, the structure looks like:

/project/ (java-related files, usually in subfolder /src)
/project/vpproject/ (VP-related files)

That’s the default path setting.

Yours sincerely,
Gunvald

Hello Gunvald,

Sorry for the late response. Separate the source and vpp project folder helps to avoid the vpp wrongly committed to server using eclipse.

Best regards,
Rain