0
My question: is there a reliable and simple version control system/mechanism/platform/... for projects with content that is effectively monolithic, opaque stuff?
Most of the projects I work on contain a mishmash of the following file types:
- Plain-text content (C, Java, ..., data files, bash scripts, ...)
- MS Office documents (Word, Excel, Visio, ...)
- Vector graphics files (SVG, EPS, ...)
- Simulink® model files (.mdl, similar in format to JSON)
- Our custom-made unit test framework (generated XML files)
- ...misc. other things with similar limitations
Currently we always put everything in one big subversion repository. Obviously, this only works well for the plain-text files. All the rest is unmergeable when treated as plain text.
For some of them there are "managed" version control systems, which we indeed use on top of subversion. For example, for MS Word documents we use the "track changes" feature. This has effectively become our version control system specific for MS Word documents. We then create copies of the document in the subversion repository whenever some version of the document needs to be tagged/delivered.
Similarly, there are managed ways to concurrently develop Simulink models, concurrently author vector graphics, etc.
But as you can imagine, I'm quite unhappy up with this workflow. Something like "track changes" doesn't prevent two users from editing the same document at the same time. Changes of both cannot be merged, and merging needs to be done manually (I'm not going to even mention document corruption). Same with the Simulink framework; real concurrency is impossible.
It's just a pain this, not to mention completely inefficient since a lot of manual copying and twiddling of files is required to keep everything properly versioned -- having everything in a subversion repository has become not much more than a convenient alternative to e-mailing documents around (which is only convenient for the people not managing the repository...).
Something like Sharepoint could solve the problem for MS Word documents, but it's not a general solution; we still have these other file types to deal with. Something like subversion plugins/hooks/etc. could work, but can be hard to get right and also a pain to keep up to date, plus it could be a significant investment since we'd probably need to develop custom plugins for things like Simulink model files...
So my question: is there a reliable and simple version control system/mechanism/platform/... for projects with content that is effectively monolithic, opaque stuff?
As interesting as this question is and as much as I'd like to know an answer, strictly speaking, it is asking for a software recommendation, which is off topic. Perhaps it could be reworked?
– Raystafarian – 2014-02-07T14:41:43.727@Raystafarian: Do you know of a stack site where such questions are allowed? I didn't ask this question on Stack Overflow for exactly this reason...I'm asking because I'm not sure that it can be reworked, because the purpose of the question is indeed to get a recommendation for a tool/method/... – Rody Oldenhuis – 2014-02-07T14:44:15.750
IF it gets closed, the only one I can think of would be to try personal productivity. Workplace would be off-topic too. Maybe project management. You could look at database admin, server admin or even infosec to see if it'd be on topic there, I'm not sure. – Raystafarian – 2014-02-07T14:45:55.727
@Raystafarian: OK, then for the moment I'll cross-post the question on both sites, and let both communities decide where it fits best. – Rody Oldenhuis – 2014-02-07T14:47:01.340
No need to cross-post, it might not get closed here! I'm pretty sure PP would think it to be interesting though..
– Raystafarian – 2014-02-07T14:47:57.097