cancel
Showing results for 
Search instead for 
Did you mean: 

Does PowerDesigner work with Git?

MountainKing
Explorer
0 Kudos
2,149

I've started at a site which is using PD16.1, but no repository. There is talk of using Git for version control, so does the version of PD we're using work with Git? I found this link below, which suggests it does:

https://stackoverflow.com/questions/32912118/model-deleted-from-powerdesigner-repository?utm_medium=...

I've only ever used PD's in-built repository for version control, not Git. Would be interested to see of others' experiences with Git.

Thanks,
Antony

View Entire Topic
MountainKing
Explorer
0 Kudos

Thanks, George. Some of the above list might be more important for us than others. I would also make the same assumption as you that Git is treating any PD model file purely as an XML document. One thing that I would expect Git to be able to do at the very least is for multiple users to work on the same PD file and check in changes, but how this would differ from the way it's done using PD's own repository is the question.

GeorgeMcGeachie
Active Contributor
0 Kudos

Don't let multiple people work on the model at the same time - GIT will not be able to understand the differences between the versions, and could screw up the model. It may just resort to overwriting the file every time it's checked in, which will be very frustrating:

  • User A and user B both check out the model - current version 1
  • User A changes "Client" to "Customer" in object names, checks in the model - GIT creates version 2
  • User B moves symbols around on a diagram, checks in the model - GIT creates version 3
  • User A checks out version 3, and screams "where are my changes?"
  • User A compares version 3 to version 2, GIT shows them the differences between two XML documents - user A tries to make sense of that, resorts to asking user B to remember what changes they made to the model, so user A can re-do them

Here's a worse scenario

  • User A and user B check out a PDM
  • User A makes a vital but minor change, checks model in to GIT, and the database is updated
  • User B makes non-vital changes, checks in the model - it no longer has the vital change

So, if you ARE using GIT, manage your check-in operations carefully. Always use PD's model merge to make sure the model you check in contains all the changes it needs to contain. Are your modellers organised enough to do that? 🙂

MountainKing
Explorer

Food for thought! It would be good if somebody from SAP could comment on what the 'official' view of using PD and Git is, i.e. totally fine, OK with caveats, any missing functionality, etc.