[Dev Log] `npx expo run:android`

헤이안나·2025년 5월 19일
0

Expo Go로 개발 중이었고,npx expo run:android를 실행했다가 프로젝트가 꼬였다. 이후 겪은 문제와 복구 과정 회고.


✅ 원래 하고 싶었던 건?

  • Expo Go 앱으로 간단히 실행만 하려던 상황
  • yarn android가 잘 안 돼서, 대안으로 npx expo run:android 실행

❗ 그런데 이 명령어가 한 짓

  • android/, ios/ 폴더를 자동으로 생성 (→ native prebuild/eject)
  • MainActivity.kt, build.gradle, AndroidManifest.xml, splash 이미지 등 40개 넘는 파일이 갑자기 추가됨

⚠️ 이후 상황

  • git reset --hard <커밋해시>로 상태 복원 시도(pull안해서 파일그대로 있음)
  • 이 시점에서 **GitHub에서 Pull 받아야 하는 타이밍이었음
  • git clean -fd 명령어로 untracked 파일까지 모두 삭제
    → 내가 만든 Git에 아직 커밋하지 않은 파일들도 함께 삭제됨
  • 그 순간 내가 만들었던 파일들이 보이지 않거나, 디렉토리 구조가 바뀜
  • Explore.tsx 같은 못 보던 파일까지 생겨버림

🔥 복구 방법

  1. GitHub Desktop에서 Pull origin → 원격 상태로 덮어씀
  2. 내가 만든 파일들, 원래 구조가 그대로 돌아옴
  3. android/, Explore.tsx 같은 건 다 사라짐

🧠 이번에 확실히 배운 점

  • npx expo run:androiddev client + native 빌드 전용 명령어임 ?? ????
    → ❌ Expo Go 전용 프로젝트에서는 절대 실행하지 말 것
  • Git에 미리 커밋/푸시해두는 습관은 진짜 생명줄
  • 작업이 꼬였을 땐 당황하지 말고,
    • git log
    • git status
    • git reset --hard <커밋해시>
    • GitHub Pull
      이 순서대로 천천히 복구 가능

✅ 다음부터는 Expo Go만 쓸 땐 무조건 npx expo start로 시작하자.
😎 메롱

profile
리액트 공부하는 사람

0개의 댓글