ctrl/sync.sh

This commit is contained in:
2026-04-10 13:34:51 -03:00
parent 27c0181d77
commit e92ab933ce

View File

@@ -7,10 +7,16 @@ REMOTE="${1:-mariano@mcrndeb}"
REMOTE_PATH="${2:-~/wdir/cht/}" REMOTE_PATH="${2:-~/wdir/cht/}"
PROJECT_DIR="$(cd "$(dirname "$0")/.." && pwd)" PROJECT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
# Ask git directly what it ignores — more reliable than rsync's .gitignore parsing,
# and correctly reflects the current branch after a checkout.
EXCLUDE_FILE=$(mktemp)
trap "rm -f '$EXCLUDE_FILE'" EXIT
git -C "$PROJECT_DIR" ls-files --others --ignored --exclude-standard --directory \
> "$EXCLUDE_FILE" 2>/dev/null || true
rsync -avz --delete \ rsync -avz --delete \
--exclude='.git/' \ --exclude='.git/' \
--exclude='media/target/' \ --exclude-from="$EXCLUDE_FILE" \
--exclude='media/logs/' \
--filter=':- .gitignore' \
"$PROJECT_DIR/" \ "$PROJECT_DIR/" \
"${REMOTE}:${REMOTE_PATH}" "${REMOTE}:${REMOTE_PATH}"