From 2e86353e77d55a0c423c843b7cc3f007310fe8a9 Mon Sep 17 00:00:00 2001 From: saravanakumardb1 Date: Thu, 12 Feb 2026 20:17:46 -0800 Subject: [PATCH] fix(backup): show commits since last backup instead of total count --- scripts/backup-main.sh | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/scripts/backup-main.sh b/scripts/backup-main.sh index ed944271..5a011ed0 100755 --- a/scripts/backup-main.sh +++ b/scripts/backup-main.sh @@ -75,10 +75,7 @@ backup_repo() { fi # Gather repo stats - local total_commits=$(git rev-list --count HEAD 2>/dev/null || echo "0") local last_msg=$(git log -1 --pretty=format:'%s' 2>/dev/null | head -c 50) - local last_author=$(git log -1 --pretty=format:'%an' 2>/dev/null) - local last_date=$(git log -1 --pretty=format:'%ar' 2>/dev/null) # Push any unpushed main commits first local ahead_count=0 @@ -101,9 +98,16 @@ backup_repo() { git fetch origin 'refs/heads/backup/*:refs/remotes/origin/backup/*' 2>/dev/null || true # Check if backup is needed (compare HEAD with latest backup) - # Fix: use cut -d'/' -f2- to get the full branch path after 'origin/' LATEST_BACKUP=$(git branch -r --sort=-committerdate 2>/dev/null | grep 'origin/backup/main-' | head -1 | sed 's|^[[:space:]]*origin/||' || true) + # Count commits since last backup + local commits_since=0 + if [ -n "$LATEST_BACKUP" ]; then + commits_since=$(git rev-list --count "origin/$LATEST_BACKUP"..HEAD 2>/dev/null || echo "0") + else + commits_since=$(git rev-list --count HEAD 2>/dev/null || echo "0") + fi + if [ -n "$LATEST_BACKUP" ]; then MAIN_COMMIT=$(git rev-parse HEAD 2>/dev/null || echo "") BACKUP_COMMIT=$(git rev-parse "origin/$LATEST_BACKUP" 2>/dev/null || echo "") @@ -112,7 +116,7 @@ backup_repo() { echo -e " ${GREEN}✅ Already backed up → $LATEST_BACKUP${NC}" SUMMARY_REPO[$SUMMARY_IDX]="$repo_name" SUMMARY_STATUS[$SUMMARY_IDX]="✅ Already backed up" - SUMMARY_COMMITS[$SUMMARY_IDX]="$total_commits" + SUMMARY_COMMITS[$SUMMARY_IDX]="0" SUMMARY_LAST_MSG[$SUMMARY_IDX]="$last_msg" SUMMARY_BRANCH[$SUMMARY_IDX]="$LATEST_BACKUP" SUMMARY_PUSHED[$SUMMARY_IDX]="$pushed_main" @@ -153,11 +157,11 @@ backup_repo() { SUMMARY_REPO[$SUMMARY_IDX]="$repo_name" SUMMARY_STATUS[$SUMMARY_IDX]="$backup_status" - SUMMARY_COMMITS[$SUMMARY_IDX]="$total_commits" + SUMMARY_COMMITS[$SUMMARY_IDX]="$commits_since" SUMMARY_LAST_MSG[$SUMMARY_IDX]="$last_msg" SUMMARY_BRANCH[$SUMMARY_IDX]="$BACKUP_BRANCH" SUMMARY_PUSHED[$SUMMARY_IDX]="$pushed_main" - ((SUMMARY_IDX++)) + SUMMARY_IDX=$((SUMMARY_IDX + 1)) } # Backup all repositories @@ -187,7 +191,7 @@ echo "" echo -e "${BOLD}┌─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐${NC}" echo -e "${BOLD}│ BACKUP SUMMARY $(date '+%Y-%m-%d %H:%M') │${NC}" echo -e "${BOLD}├──────────────────────────────────┬──────────────────────┬─────────┬────────────────┬──────────────────────────────────┤${NC}" -printf "${BOLD}│ %-32s │ %-20s │ %7s │ %-14s │ %-32s │${NC}\n" "Repository" "Backup Status" "Commits" "Main Push" "Last Commit" +printf "${BOLD}│ %-32s │ %-20s │ %7s │ %-14s │ %-32s │${NC}\n" "Repository" "Backup Status" "New" "Main Push" "Last Commit" echo -e "${BOLD}├──────────────────────────────────┼──────────────────────┼─────────┼────────────────┼──────────────────────────────────┤${NC}" for ((i=0; i