220810 TIL 아직도 어려운 git

2022. 8. 10. 23:44·성장이야기/TIL

오늘 새벽에 과제를 다 만들고 푸쉬를 한 뒤 깃허브에 잘 올라갔는지 확인을 했는데 깃 충돌이 또 발생했다.

이전에 충돌이 한번 나서 해결 못하고 올린 pr을 임의로 close하고 다시 올렸었는데 트레이너님이 pr을 다시 보내지 말라고 하셔서 이번에는 충돌 난 걸 해결해야 했었다.

근데 나만 충돌이 난 줄 알았는데 동료분들 모두 다 충돌이 나고 pr 올린 게 이상한 곳으로 올라가는 현상이 발생했다.

 

뭐가 문제인지 확인하다가 fork가 이상하게 돼있는 것을 발견했다.

fork를 맨 처음에 1mptera 레파지토리에 있는 것을 fork해왔는데 새벽에 보니까 내가 1mptera에서 fork해온 내 깃허브의 레파지토리를 동료분들이 fork를 하고 있었다. 

그래서 동료분들이 푸쉬하면 내 깃허브로 과제가 제출되고 있었다. 

 

왜 내 걸로 왔지?? 내가 뭔가 깃 명령어를 잘못 쳐서 일어난 일인가..?? 

내가 잘못한 거 같아서 일단 동료분들에게 사과를.... 

뭐가 문제인지 모르니까 어떻게 해결해야 하는지도 몰랐다.

 

다음날 아침에 귀신같이 트레이너님이 깃허브에 문제가 생긴 걸 아시고 오셨다.

결론은 내가 잘못해서 일어난 문제가 아니었다. 깃허브 레파지토리 권한을 변경하면서 마지막에 pr 보낸 사람에게 소유권이 넘어갔다고 하셨나? 아무튼 마지막에 pr 한 사람이 나여서 나한테 동료분들의 pr이 올라온 거였다.

 

깃을 이용하다 오늘같이 깃 충돌 같은 문제가 일어나면 어찌해야 할지 멘붕상태에 빠진다.

그래서 최대한 오류를 피하기 위해서 매일 쓰는 깃 명령어만 쓴다.

add, commit, push 이 세 가지 명령어를 사용하는 게 아니면 뭔가 잘못될까 봐 항상 두려웠다.

 

그래서 오늘 애매했던 깃허브 명령어를 어떤 상황에서 써야 하는지 트레이너님께 물어봤다. 

fetch 랑 rebase를 트레이너님이 해야 한다고 하신 적이 많아서  언제 왜 해야 하는지도 모르고 사용했었는데 트레이넘한테 물어보면서 조금 알게 되었다.

 

일단 fetch를 하면 원격 저장소의 커밋들을 나의 로컬 저장소로 가져오는 기능이다.

그리고 fetch는 자동으로 병합이 되지 않기 때문에 내가 직접 확인을 한 후에 병합할 수 있다는 장점이 있다.

 

fetch에 대해 알고 나니 언제 써야 하는지는 명확해졌다.

원격 저장소의 내용과 내 로컬 저장소의 내용이 다르면 fetch 후 rebase를 해서 같게 해 주면 된다고 하셨다.

 

rebase는 merge처럼 fetch로 가져온 커밋들을 병합해주는 명령어인데 rebase와 merge의 차이는 아직 공부하지 못했다.

그래서 rebase 명령어를 공부해볼 생각이다.

rebase 명령어를 모르고 쓰다가 언젠가 또 낭패를 맛볼 거 같기 때문에..

 

 

 

'성장이야기 > TIL' 카테고리의 다른 글

220812 TIL Layered Architecture란 무엇인가?  (0) 2022.08.12
220811 TIL 공부하다 한번씩 찾아오는 무기력함  (0) 2022.08.11
220809 TIL 의도적 수련  (0) 2022.08.09
220808 TIL 할지 말지 고민이 된다면 해라!  (0) 2022.08.08
220807 TIL 처음은 항상 재밌다.  (0) 2022.08.07
'성장이야기/TIL' 카테고리의 다른 글
  • 220812 TIL Layered Architecture란 무엇인가?
  • 220811 TIL 공부하다 한번씩 찾아오는 무기력함
  • 220809 TIL 의도적 수련
  • 220808 TIL 할지 말지 고민이 된다면 해라!
seungjjun
seungjjun
  • seungjjun
    개발이야기
    seungjjun
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 성장이야기
        • TIL
        • 주간회고
      • Java
        • Spring
        • Spring Security
      • 트러블슈팅
      • Kafka
      • OS
      • Network
      • 메가테라
      • Database
      • Algorithm
      • Git
      • HTML
      • CSS
      • 독서
      • 컴퓨터 이해하기
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Til
    개발일지
    항해플러스
    graphQL
    메가테라 주간회고
    메가테라
    redis
    주간회고
    이커머스 프로젝트
    항해99
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
seungjjun
220810 TIL 아직도 어려운 git
상단으로

티스토리툴바