Files
stats/sh/tag-self-hosting
Carl-Gerhard Lindesvärd 42d0fb8572 fix self-hosting
2025-10-22 11:38:37 +02:00

61 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
# Tags to manage
TAGS=("self-hosting")
# Get commit from argument or default to HEAD
COMMIT="${1:-HEAD}"
echo "🏷️ Managing tags: ${TAGS[@]}"
echo "📍 Target commit: $COMMIT"
echo ""
# Verify commit exists
if ! git rev-parse --verify "$COMMIT" >/dev/null 2>&1; then
echo "❌ Error: Invalid commit reference: $COMMIT"
exit 1
fi
# Delete local tags
echo "🗑️ Deleting local tags..."
for tag in "${TAGS[@]}"; do
if git tag -l "$tag" | grep -q "$tag"; then
git tag -d "$tag"
echo " ✓ Deleted local tag: $tag"
else
echo " - Tag $tag doesn't exist locally"
fi
done
echo ""
# Delete remote tags
echo "🗑️ Deleting remote tags..."
for tag in "${TAGS[@]}"; do
if git ls-remote --tags origin | grep -q "refs/tags/$tag"; then
SKIP_HOOKS=1 git push origin ":refs/tags/$tag" 2>/dev/null
echo " ✓ Deleted remote tag: $tag"
else
echo " - Tag $tag doesn't exist on remote"
fi
done
echo ""
# Create new tags
echo "🏷️ Creating new tags on commit $COMMIT..."
for tag in "${TAGS[@]}"; do
git tag "$tag" "$COMMIT"
echo " ✓ Created tag: $tag"
done
echo ""
# Push tags
echo "🚀 Pushing tags to remote..."
SKIP_HOOKS=1 git push origin "${TAGS[@]}"
echo ""
echo "✅ Done! Tags updated successfully."