Git conflict

이진우·2022년 11월 21일
0

Git

목록 보기
1/1
post-thumbnail

Title - Git conflict

🤯 원인

  1. git에 대한 이해도 부족
    • 무분별한 git init, remote, pull
    • 왜 안되지 하면서 아무데나 git init해버림

  2. npx create-react-app에 대한 이해도 부족
    • git ignore,REDEME.md가 자동 생성되는데 이걸 모름!
    • 그 결과 git repository에서 pull해온 git ignore,REDEME.md 와
      로컬에 있던 git ignore,REDEME.md를 같은 파일에 올려버림!
      당연히 둘중하나 선택하라고 하는데 무시하고 올림
      git ignore에 있던 node_modules가 삭제된채로 git push 되어버림
    • node_modules가 올라가버림
    • 4백만줄이 diff로 걸려버림~ 🤯

  3. 내 맘대로함
    • 포크 > 클론 이후에 그 주소에서
      영문 이름으로 리액트 앱을 만들어야하는데
      폴더만들고 앱만들고 난 후 포크하고 클론함

결과: .git ignore READEME.md가 기본적으로 있는것도 모르고 냅다 .git ignore READEME.md있는 폴더에 중첩해서 넣어서 conflict남

💡 해결방법

  1. 제출해야하는 파일들을 새로운 폴더를 만들어서 옮겨둠
  2. 옮겨둔 폴더에 git init 및 force branch생성 add, commit
  3. push했을 때 pull을 안해서 에러가 뜸
  4. 기존에 remote 되어있었던 폴더 하드리셋
  5. 기존 폴더에 git pull origin main함
  6. force branch와 main브랜치 merge실행
  7. git push origin +main해서 force에 있던 내용이랑 pull받았던 내용
    합쳐서 내 원격 repository에 올림
  • 중간에 main에서 풀 없이 작업을 했다보니 main 인식을 못함

실질적인 해결방법
1. 새로운 폴더에 수정된 포크해온 GDSC 레포 pull
2. 이진우 폴더 만들고 파일 집어넣음
3. 레포에 강제푸쉬
4. .git ignore, READEME.md 수정

📚 느낀점 및 알게된 점

컨벤션이 괜히 있는게 아니다~
컨벤션에서 하라는 대로 하고 왜 이렇게 되는지 알아도 늦지않다!


create-react-app을 하면 자동으로 .git ignore READEME.md가 생성된다.
알아서 노드모듈 제거해주니까 이상한데서 쇼하지 말자.


git pull을 함부로 하지말고 풀한것과 로컬의 것을 구분을 잘하자...
파일 함부로 옮기지말자...

profile
츄라이츄라이

0개의 댓글