역대급 삽질을 기록해보려고 한다
참 피가 말렸던 시간들,,
: PR 시 node_modules 같은 폴더가 함께 올라가 100K개의 파일이 업로드 되었다는 것이었다.
+) 추가로 이 문제를 해결하다가 더 황당한 실수 발견
: 동일한 이름의 폴더를 두 가지 경로에 저장해놓은 것이다.
이걸 2주차 1번 미션 완료 후 push된 코드를 검토해보았을 때 깨닫게 됨 😭
분명,, 코드를 적었는데 왜 커밋이 안 됐지? 왜 이러지?
사실은 동일한 폴더가 두 개 있다는 것도 이땐 알지 못했다.

우선 100K의 파일이 업로드 된 게 가장 문제였고, 오후에 디스코드에서 동일한 질문이 오간 것을 보았다.
=> 링크를 참고해서 진행 해보았으나 해결되지 않았다 😭
🤔 그래서 같이 미션 프로젝트를 하는 친구에게 질문을 했고, 유사한 문제를 해결했을 때 참고했던 링크를 보내주었다.
그 블로그에선 아래의 명령어를 알려주었는데
.
.
git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch ./node_modules -r option' --prune-empty --tag-name-filter cat -- --all
git push --force --all
바로 이 명령어였다.
나는 마음이 급한 나머지 이 명령어가 무엇을 뜻하는지 알지 못하고 무작정 복사+붙여넣기 진행
그리고 결과는 바로바로‼️‼️
그래서 또 다른 나의 친구에게 원인을 물어보았음 ( GPT야 도와줘,, )

진짜 거짓말이겠지, "전부 날아감"이라는 문장에 꽂혀 정상적인 사고가 불가능했다.
그래서 미션2로 회피를 함
카페에서 탈출하여 집으로 되돌아온 후 차근차근 문제의 원인부터 찾기 시작했다.
아래는 GPT의 답변 👇
Pull Request가 병합(Merged)되었거나, 관련 브랜치가 삭제된 경우
아래 중 하나라도 해당되면 Reopen 버튼이 사라집니다:
PR이 이미 merged 된 경우 → 되돌릴 수는 있지만 reopen은 불가
PR의 소스 브랜치가 삭제된 경우 → PR을 reopen할 수 없습니다
📌 이 경우에는:
브랜치를 다시 만든 뒤, 새 Pull Request를 생성해야 합니다.
(실제로 모든 일을 마무리하고 다시 확인해보니 아래 이런 코멘트가 있었다)
git checkout -b YJ-Y
git push origin YJ-Y
그리고 GitHub에서 새 PR을 열면 됩니다.
이후에는 아래의 방식으로 fix 버전의 브랜치와 함께 PR을 다시 한 번 생성했다.
- 원격 저장소의 main 브랜치 최신 상태 가져오기
git fetch origin
- main 브랜치로 이동하고 최신화
git checkout main
git pull origin main
- 새 브랜치 만들기 (예: YJ-Y-fix)
git checkout -b YJ-Y-fix
이러한 과정으로 진행하니 중간중간 에러코드가 뜨지 않고 스무스하게 진행되어 약간의 기대감이 생겼고, 결과는
솔직히 아직까지 맞는 건가? 싶긴 하지만 어찌됐든 무언가 다시 복구돼서 내 눈앞에 보이는 게 어딘가 ㅠ.ㅠ
2주차 미션은 복구되지 않아 다시 처음부터 해야되지만 이것도 감사했다.
정말 롤러코스터 탄 것 같은 몇 시간이었다.
명령어는 잘 알아보고 쓰자 ‼️
: 성급하게 복사 붙여넣기 금지
GitHub에 대해 한 발짝 더 가까워진 느낌 (?)
: 솔직히 지금까진 Commit / PR만 썼던 것 같은데
branch도 다시 만들어보고 변경도 해보고,, 깃허브가 어떤 식의 명령어로 구성되고 어떻게 굴러가는지 직접 경험해보았다.
그럼 원래 쓰던 YJ-Y 브랜치는 사용이 불가한 것인가?
GitHub 사용 시 보다 안전하게 백업할 수 있는 방법이 있을까?
다시는 이런 실수를 하지 않도록 GitHub 사용법을 익히고 안전하게 파일을 관리해야겠다는 생각이 들었다 ,,
이 글을 보는 여러분들은 본인 손으로 이런 일을 저지르지 마세요 🥹
+) 25.05.21
또 한 번 node_modules이 npm_mission 폴더에 잡혀 커밋할 파일 개수가 10,000개가 넘어갔고 이에 대한 해결책을 찾았다.
: 전역 폴더에 .gitignore 파일 생성 > node_modules 한 줄 써주면 commit 할 때 함께 잡히지 않음 !!

"!방금 한일은 ..." GPT 의 답변이 정말 웃기네요🤣 저도 자세히 알아보지 않고 오류를 해결할 마음에 그대로 명령어 복사한 적이 많은데 조심해야겠어요 ㅎㅎ
그래도 직접 겪으며 깃에 대해 더 가까워지는 기회가 되신 것 같아요👍
1주차 미션 기록이라도 살려서 정말 다행이네요
미션코스 하시느라 수고 많으셨어요 !! 🔥