diff --git a/.github/workflows/git-sync.yml b/.github/workflows/git-sync.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0dba40be1048516c3cc91afe85af4d36d3dc9ca6
--- /dev/null
+++ b/.github/workflows/git-sync.yml
@@ -0,0 +1,14 @@
+on: push
+jobs:
+  git-sync:
+    runs-on: self-hosted
+    steps:
+      - name: git-sync
+        uses: wei/git-sync@v3
+        with:
+          source_repo: 'git@github.com:nmaas-platform/nmaas-portal.git'
+          source_branch: 'refs/remotes/source/*'
+          destination_repo: 'git@gitlab.geant.org:nmaas/nmaas-portal.git'
+          destination_branch: 'refs/heads/*'
+          source_ssh_private_key: ${{ secrets.SOURCE_SSH_PRIVATE_KEY }}
+          destination_ssh_private_key: ${{ secrets.DESTINATION_SSH_PRIVATE_KEY }}
\ No newline at end of file