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개의 댓글

관련 채용 정보