FinancePlanner/git-sync.sh
2026-05-29 12:00:49 +01:00

50 lines
1.2 KiB
Bash
Executable file

#!/bin/bash
# ─────────────────────────────────────────────
# git-sync.sh · Commit & push all changes
# to Gitea. Run this whenever you update files.
#
# Usage:
# ./git-sync.sh (auto message)
# ./git-sync.sh "My message" (custom message)
# ─────────────────────────────────────────────
set -e
BRANCH="main"
cd "$(dirname "$0")"
# ── Check we're in a git repo
if [ ! -d ".git" ]; then
echo "❌ No git repo found. Run ./git-setup.sh first."
exit 1
fi
# ── Check there's anything to sync
if git diff --quiet && git diff --cached --quiet && [ -z "$(git status --porcelain)" ]; then
echo "✅ Nothing to sync — everything is already up to date."
exit 0
fi
# ── Commit message
if [ -n "$1" ]; then
MSG="$1"
else
MSG="Sync: $(date '+%Y-%m-%d %H:%M:%S')"
fi
echo ""
echo "📦 Files changed:"
git status --short
echo ""
git add -A
git commit -m "$MSG"
echo ""
echo "⬆️ Pushing to origin/$BRANCH"
git push origin "$BRANCH"
echo ""
echo "✅ Synced successfully at $(date '+%H:%M:%S')"
echo ""