#!/bin/bash # 브랜치 비교 스크립트 # 사용법: ./compare-branches.sh <파일경로> [브랜치1] [브랜치2] FILE_PATH=$1 BRANCH1=${2:-develop} BRANCH2=${3:-feature/si_log} if [ -z "$FILE_PATH" ]; then echo "❌ 사용법: ./compare-branches.sh <파일경로> [브랜치1] [브랜치2]" echo "" echo "예시:" echo " ./compare-branches.sh src/App/deepLinkHandler.js" echo " ./compare-branches.sh src/actions/logActions.js develop develop_si" exit 1 fi FILENAME=$(basename "$FILE_PATH") TEMP_DIR="/tmp/branch_compare" # 브랜치 이름에서 슬래시를 언더스코어로 변경 BRANCH1_SAFE=$(echo "$BRANCH1" | sed 's/\//_/g') BRANCH2_SAFE=$(echo "$BRANCH2" | sed 's/\//_/g') mkdir -p "$TEMP_DIR" echo "🔍 비교 중..." echo " 📂 파일: $FILE_PATH" echo " 🌿 브랜치1: $BRANCH1" echo " 🌿 브랜치2: $BRANCH2" echo "" git show "$BRANCH1:com.twin.app.shoptime/$FILE_PATH" > "$TEMP_DIR/${FILENAME}_${BRANCH1_SAFE}" 2>/dev/null if [ $? -ne 0 ]; then echo "❌ 오류: $BRANCH1 브랜치에서 파일을 찾을 수 없습니다." exit 1 fi git show "$BRANCH2:com.twin.app.shoptime/$FILE_PATH" > "$TEMP_DIR/${FILENAME}_${BRANCH2_SAFE}" 2>/dev/null if [ $? -ne 0 ]; then echo "❌ 오류: $BRANCH2 브랜치에서 파일을 찾을 수 없습니다." exit 1 fi echo "✅ 파일 추출 완료!" echo "📊 라인 수:" wc -l "$TEMP_DIR/${FILENAME}_${BRANCH1_SAFE}" "$TEMP_DIR/${FILENAME}_${BRANCH2_SAFE}" echo "" echo "🎨 Cursor에서 비교 화면 열기..." code --diff "$TEMP_DIR/${FILENAME}_${BRANCH1_SAFE}" "$TEMP_DIR/${FILENAME}_${BRANCH2_SAFE}" echo "✨ 완료!"