Pushing iterative versions despite source sync

Hi everyone, I have the following issue: When I sync my project with a Gitlab repository, the first thing CrowdIn does of course is to check for source file changes to sync those. However, when I get a delivery from my LSP and I want to push these new files into the repo, I will have to update the branch in the repo with the latest version of main/prod in order to not get any conflicts in Git.

If CrowdIn detects changes in the sources, that means that there are files that aren’t included in the merge request because there are now segments that haven’t been approved yet.

The only solutions I can think of are:

  • Not update the branch until after the MR → Not always feasible, may lead to conflicts in the repository
  • Deactivate the “Only push approved translations” setting → Having it on feels like a safeguard to me, not sure it’s a good idea to turn it off since it may cause unwanted changes to be included.

Edit: If I leave the corresponding segments blank, and just kind of save it in a way that allows it to be pushed, I’m contaminating my TM (+ giving myself more manual effort to clean it up afterwards).

Do you have any suggestions on how else I could bypass this source sync issue? Thanks!

Best,

Mark

Hi @mneustadt,

You can add the parameter update_without_changes to your configuration file to preserve translations and validations of changed strings. It would mean that each time when you are updating the source strings on your repo the translations and approvals on the Crowdin side won’t be lost.

Later on, you can filter out the strings where the source text was changed in Crowdin by using the Advanced filterTranslationsModified source strings. In this way, you can filter out such strings where the source text was changed and correct the translations if needed.

Do you think it might work for you?

Please feel free to correct me if I misunderstood you,

Hi Olena, that sounds exactly like what I’m looking for and is actually applicable to other usecases where we’ve been having this issue. I’ll try it out when the time comes and get back to you if there are any issues. Thank you very much!

1 Like

Hi @Olena , just one more question: Is it necessary to add this parameter using the CLI client or is it also possible to just manually edit the yaml file in the repository?

For example:

files:

  • source: /docs/de/**/*.md
    ignore:
    • /docs/de/02-tutorials
    • /docs/de/03-whats-new
    • /docs/de/04-glossary
      “update_option”: “update_without_changes”
      translation: /docs/%two_letters_code%/**/%original_file_name%

If you’re using in-build Crowdin - GitLab connector, then all parameters should be added in configuration file directly (crowdin.yml) or in configuration wizard UI (when you connect the repository via Crowdin’s UI).

I’m using the connector from the CrowdIn UI. However, I just saw in your docs that this parameter can’t be added online (which is probably to mean in the CrowdIn UI).

Update_option stands for this parameter, it is option to use it or not.

It can be either update_as_unapproved or update_without_changes:

You’re welcome to edit crowdin.yml in the repository and then force synch integration so changes are applied.