diff --git a/nix/scripts/release.nix b/nix/scripts/release.nix
index 100788da93bc123c9e89718bf125399121a28ab4..fe9a18b2a5e30938ea02c33f5fc3add92cb2ba6c 100644
--- a/nix/scripts/release.nix
+++ b/nix/scripts/release.nix
@@ -39,7 +39,7 @@ in
         echo_fail "Error: Could not get git log."
         exit 1
     fi
-
+set -x
     ${pkgs'.git}/bin/git fetch --prune --prune-tags
 
     echo_step "Bumping version"
@@ -62,19 +62,25 @@ in
         echo_fail "Error: Could not write project version."
         exit 1
     fi
+    
+    if ${pkgs'.git}/bin/git tag -l | grep -q "$gitVersion"; then
+      echo_step "Tag $gitVersion existiert bereits. Lösche und setze den Tag neu."
+      ${pkgs'.git}/bin/git tag -d "$gitVersion"
+      ${pkgs'.git}/bin/git push origin --delete "$gitVersion"
+    fi    
 
-    ${pkgs'.git}/bin/git tag -a $gitVersion -m"chore: bump version to $gitVersion"
+    ${pkgs'.git}/bin/git tag -a "$gitVersion" -m"chore: bump version to $gitVersion"
     ${updateChangelogScript}/bin/update-changelog
     cd $CI_PROJECT_DIR || exit 1
 
-    if ! ${pkgs'.git}/bin/git tag -d "$gitVersion"  2>/dev/null; then
-        echo_fail "Error: Could not delete git tag $gitVersion."
-        exit 1
+    if ! ${pkgs'.git}/bin/git tag -d "$gitVersion" 2>/dev/null; then
+      echo_fail "Error: Could not delete git tag $gitVersion."
+      exit 1
     fi
     
     ${pkgs'.git}/bin/git commit -m "chore: release $gitVersion" CHANGELOG.md ./nix/config/release.nix package.json
 
-    ${pkgs'.git}/bin/git tag -a $gitVersion -m"chore: bump version to $gitVersion"
+    ${pkgs'.git}/bin/git tag -a "$gitVersion" -m"chore: bump version to $gitVersion"
     ${pkgs'.git}/bin/git --no-pager log --decorate=short --pretty=oneline -n 5
 
     ${pkgs'.git}/bin/git remote set-url origin https://pad:''${GITLAB_TOKEN}@''${CI_REPOSITORY_URL#*@}