Lokalise_GitLab

Native GitLab integration

Automate GitLab localization for faster multilingual launches

Automatically exchange language files between GitLab and Lokalise, so you can import and export content as soon it’s ready—and keep software up to date in every language.

Lokalise is loved by tech teams at 3000+ global companies

Logo (6)
Logo (3)
Logo (17)
Logo (14)
Logo (9)
Logo (22)
Logo (19)
Logo (10)
Logo (26)
Logo (12)
Logo (1)
Logo (24)
Logo (25)
Logo (30)
Logo (4)
Logo (31)
Logo (23)
Logo (7)
Logo (28)
Logo (8)
Logo (21)
Logo (20)
Logo (5)
Logo (15)
Logo (29)
Logo (27)
Logo (11)
Logo (13)
Logo
Logo (18)
Logo (2)
Logo (32)

“To be able to pull and push command lines was fantastic. Engineers don't have to spend time remembering to push up translations and pull them back down, which is great.”

Kate CobbSenior Full Stack Engineer
logo
review image

Manage translation files in one place with GitLab and Lokalise

Translate your software with just a few clicks.

  • option image

    Automate key entry & updates

    Auto-pull files when you push changes to GitLab, and instantly create keys in Lokalise, ready for localization.
  • option image

    Organize localization with GitLab

    Always be confident you’re working on the most up-to-date file versions, reducing the risk of bugs and errors.
  • option image

    Never miss project updates

    Manage when and how you exchange information with webhooks and keep track of localization tasks.
  • option image

    Save time updating translation keys

    Eliminate time-consuming manual key entry, reducing localization errors, and ship multilingual releases faster.

⚙️ How to set up
Lokalise and GitLab

  • Go to the ‘Apps’ dashboard inside Lokalise
  • Search for GitLab and click Install
  • Copy/paste your personal access token from GitLab and your host URL (usually it's just https://gitlab.com).
  • Enter your Project ID and Branch to pull from. Optionally, provide a Project name.

🔧 What you’ll need

See documentation

💡 Managing translation files with GitLab and Lokalise

  • Pull

    type image
    Pull your files from GitLab into Lokalise to automatically create keys for all languages that have been selected in Lokalise.
  • Translate

    type image
    Use built-in AI translation for spot-on multilingual content in minutes.
  • Export

    type image
    Merge files to a selected branch on GitLab. Go to the Download tab, choose your file format, and hit Build.

“Before Lokalise, it took developers at least half a day to manage the translations and add new keys, whereas, with Lokalise in place, they spend about 80–90% less time on the same tasks.”

Sylvia Taube Senior Product Manager at Indeavor
Apps GitLab 02.25 - 11

“The infrastructure and the architecture of the tool are really good. We can simply create tasks and then the translators do the rest. Also, the whole process of project management is simplified quite a lot.”

Aleš Ruter Chief Creative Officer
Apps GitLab 02.25 - 12

💡 Tip: Automate content exchange

Set up a webhook at GitLab to automate pulls to Lokalise as you push changes to GitLab. In GitLab, navigate to Settings>Webhooks>Add webhook. Copy/paste the Auto-pull URL and Auto-pull secret from Lokalise into GitLab. Finally, enable the Push events trigger.

tips image tips image

Sync translation files effortlessly

Exchange translation files between GitLab and Lokalise.

FAQs

How do I create a Pull Request (PR)?
To create a new pull request on GitLab with all the changes made on Lokalise, proceed to the Download page and find the App triggers section. Enable the GitLab option and choose your repository. If the Repository name has been provided during the initial setup, you'll see it in the dropdown. Use the Preview button first, so you can see the resulting file/folder structure before triggering the creation of a pull request. We recommend triggering pull requests only to the repos of the platform that match the file type you are exporting, i.e. if you are exporting in a JSON format, Lokalise will only create pull requests in repositories with the Web platform. To create a pull request on GitLab, hit Build only (this way you won't download a translation bundle to your local PC). To check the status of the pull request creation, return to the GitLab app page and click the Logs button.
How do I create a personal access key in GitLab to use in Lokalise?
Proceed to GitLab. Click on your avatar in the top right corner and click Preferences. Check that you have permissions for project administration and setting management. Next, click Access tokens, click Add new token, enter the new token's name and enable the API scope. Click Create personal access token. Copy the token as you won't be able to view it after closing the page.
I have updated strings in my GitLab file, but the values are not updating on Lokalise. What am I doing wrong?
Make sure that the ''Replace modified values'' option is enabled in the pull settings. You can read more about all the upload parameters in the Upload files article.
How do I make sure the file structure in PR matches the file structure in my repository?
To match the right structure of your files, you have to name files properly and select the right options when creating a PR. This is easy when enabling "Include full path in the filenames" in the general GitLab app settings in Lokalise. Then during download, select "Multiple files per language (use assigned filenames)", and modify or delete the prefix. Please check the Filenames article for reference.
I have key names that repeat across files. How can I support repeated key names in Lokalise?
To support repeated key names in Lokalise, make sure that the "Differentiate keys by file" option is enabled in the app’s pull settings.
Why does Lokalise request access to all my repositories?
Lokalise requests access to all repositories to list them during setup so you can specify which repository to connect to Lokalise. There is no more restrictive OAuth scope for this purpose. Once the app is configured, Lokalise only works with the repository you selected.
What actions does the app use the OAuth token for?
Lokalise only creates merge requests and fetches the files you selected during setup. The Lokalise GitLab app does not alter the repo’s settings.
Is there any way to restrict the app's permissions?
GitLab user permission scopes limit access for OAuth tokens. The Lokalise app’s access is limited by the permissions of the user who configures the integration. If you need to limit the integration’s access to a specific repository, you can do so by limiting the permissions of the authorizing user’s GitLab account.

GitLab users can always revoke a token or edit the token scopes for more control over what the integration can do.
How is my access token stored?
Your token is stored in an encrypted form in our database. The database itself is stored on dedicated servers at the Hetzner Online provider, which ensures top-level physical security. You can learn more on the Hetznet website.

We take regular snapshots of the database and store them in a 256-bit encrypted Amazon S3 bucket for 30 days.