Best practices for working with translations in a source-controlled environment
Our company is using Git / GitHub for source control. I have connection profiles setup in RoboHelp, everything works, no problem.
We also manage translations. We use the Google Translate API do do machine translation, which gets us 90-95% of the way there. Then, we review the translated project to iron out the wrinkles left by the automated translation and replace images that contain text.
Basically, I'm looking for advice when working with both elements at the same time: translations and source control.
Single repo vs. multiple repos
From the experimentation I've done, I think it is generally better to use a distinct repository for each RoboHelp project we have. I found that if I need to disconnect a project and remove the local copy from my hard drive, using the Remove Connection option from RoboHelp will disconnect the entire repository. If other projects are in the same repo, they will all become disconnected. Also, commits are easier to track with separate repos.
Repositories for translated projects
With that said, when dealing with translation projects specifically, should we keep a separate repo for each language, or is it better to use a single repository which contains the parent project and all its translations? We have to keep in mind that the parent project is linked to its translations throughan absolute path in *.locz files, so the projects need to "see" each other for the translation management to work. There are arguments for and against both approaches, but I'm looking to see if anyone has previous experience with this?
Collaboration vs. translated projects
Next, how does collaboration work with translations? The issue I'm running into is that the path to translation projects is absolute (as opposed to relative), and there is apparently no way to change the path through the RoboHelp UI. If another author clones the repo and his/her local path is different than mine, the translation management link will be broken. The only way to fix it is to manually edit the *.locz file. Unfortunately, doing this will break the link for me once my colleague does a commit/push, and then I do a pull to get the latest changes. It seems like a catch 22 here. Before anyone asks, standardizing the local path for all authors is not an option. This is a "Bring Your Own Device" environment, so different authors may use an entirely different drive for the local path. This simply cannot be enforced.
So, what is the best way to manage repositories for translation projects, and how can we work around this path issue? Looking for any advice!
I can't say that I'm proficient with Git, but I do have a good understanding of basic principles like repositories, branching, commit, push, pull and pull requests. At first glance, it looks as though translation management (or some aspects of it) was not fully considered when version control was implemented.
