Save your workflows into a Gitlab repository
Ready for 3.0Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.
Nodes used (9)
- Manual Trigger
n8n-nodes-base.manualTrigger - Edit Fields (Set)
n8n-nodes-base.set - No Operation, do nothing
n8n-nodes-base.noOp - Loop Over Items (Split in Batches)
n8n-nodes-base.splitInBatches - GitLab
n8n-nodes-base.gitlab - Code
n8n-nodes-base.code - Extract from File
n8n-nodes-base.extractFromFile - Switch
n8n-nodes-base.switch - n8n
n8n-nodes-base.n8n
What it does
This template is inspired by Save your workflows into a GitHub repository by hikerspath and Back Up Your n8n Workflows To Github by jon-n8n. Basic Retrieve all workflows from an n8n instance and save it on a gitlab project. If the workflow exist, il will only save the changes. Flow What the workflow does : 1. Sets custom parameters 2. Gets workflows 3. Iterates through each workflow one by one 1. Get the file from Gitlab if exists 2. Compare the files as objects (not as strings) 3. Return a status on the workflow 4. Create, Edit or ignore the file depending on the status 5. Return a list of status for each workflow Configuration Select a credential in each Gitlab nodes. Edit the data in node "Globals" : - repo.owner : slug of the user or team owning the repo - repo.name : slug of the repository - repo.branch : branch to commit on - repo.path : from root of the repository. Should end with / Comments Error on gitlab nodes will not stop the run but will list the current workflow as error in the results Some fields are ignored to determined if there is changes : - updatedAt : should be ignored if only ignores fields are changed - globals : it's running information, no need to follow the changes