How to preserve labels, screenshots and comments between strings in a file-based project

We are in the process of setting up a version control sync between our github and crowdin.

Here’s what we would like to have:

  • all production strings are stored in a .po file on the master branch and are synced with crowdin master branch
  • a new PR with a new feature for translation is opened on Github
  • the new feature branch is automatically created in crowdin having the same new strings from the github feature branch
  • a translator adds translations for the strings in the feature branch in crowdin (along with labels for strings, screenshots, comments etc.)
  • when everything’s translated, we sync crowdin feature branch with github feature branch
  • we merge the feature branch to master in github and remove the feature branch in github
  • we sync master with crowdin and all the translated strings along with all meta data appear in the crowdin master branch
  • we delete the crowdin feature branch

In order to achieve this workflow, we use the crowdin github action in PR CI/CD to sync a github feature branch with a crowdin feature branch. In the action config, we use upload_sources: true and upload_translations: false. Also, we use Hide (regular delection) setting for duplicates detection.

Generally, the workflow works, but there’s a problem though: the duplicate strings do not share the same meta data as the master string (labels, etc).

When we remove the master string, the autority is correctly transfered to duplicates, but it doesn’t happen for labels and comments. So, given the example I gave, we have a situation when the strings in the master branch on crowdin do not have all the added labels and comments that were added to the strings in the feature branch, even when the feature branch has been removed.

Is there a way to resolve it anyhow? Generally, we would like all duplicate strings to share all the meta data of the master string.

Hi @stanislavh
Currently, the mentioned metadata is preserved on the file level and tied to each string separately and can’t be shared between strings as it is with translations. But let me pass this to our team and we’ll investigate if this feature can be implemented from the technical point of view (int - 22484). As soon as we have any news, we’ll get back with the update

However, it is possible to assign labels as a mass action using the following app:

Also, if you need to preserve comments from the files that it is going to be deleted, it is possible to export the CSV file with string’s metadata using the app below:

Hello @Tetiana ,

Thanks for your answer. I will be waiting for the answer from the dev team.

Also, I wanted to note that screenshot data is transferred correctly when deleting the master string.