Git

나이든별 / Oldstar·2022년 4월 24일
0

Think about Keywords

목록 보기
2/37

학습 내용

  • Git

문제점 / 고민한 점

  • 버전 관리 도구에 대해 좀 더 깊게 생각해봤다. 이전에는 Sourcetree를 써 왔고, 이번 기회에 연습해야겠다 싶어서 CLI Git을 통한 버전 관리를 해 봤다. 이것밖에 방법이 없는 것일까..
  • git revert, git reset 등을 하는 데 두려움이 너무 크다.
  • 거기다가 프로젝트를 진행하던 중, git merge와 git rebase를 혼동하는 일도 있었다.

극복 방법

  • 먼저, Xcode에는 자체적인 버전 컨트롤 도구가 내장되어 있으니, 그 이름은 Xcode Source Control. 여지껏 몰랐던 방법이었다.
  • github에 이미 올라간 repository에서 브랜치를 지우는 것에 관해서도 많이 알 수 있었다. 프로젝트를 클론해온 사람이 설정 탭에서 쉽게 지울 수 있을 뿐더러, 임의로 새 브랜치를 만든다고 해도 그것은 클론한 저장소에만 있는 것이며, 원본 저장소에는 아무런 영향을 미치지 않는다. 그렇기 때문에 좋아하는 브랜치에서 작업하고 Pull Request를 넣으면 된다.
  • git rebase와 git merge의 차이점은, 직접 오류를 맞닥뜨려가며 알 수 있었다. A 브랜치를 체크아웃하고 git merge B를 통해 B브랜치를 merge할 경우, 그리고 B브랜치가 A브랜치보다 앞에 있을 경우, B브랜치의 진행도가 A브랜치에 합쳐지며 B브랜치는 내 로컬 저장소에서 소멸한다. 반면 git rebase B를 사용할 경우, 진행도는 B브랜치와 동일해지지만 B브랜치는 삭제되지 않는다. B브랜치가 계속 필요한지, 아니면 그 쓰임을 다했는지에 따라 골라 쓸 수 있을 것 같다고 생각했다.
  • git reset은 두려워해야 하는 것이 맞다고 생각하지만, git revert는 두려워할 필요가 없다고 생각했다. 특정 커밋을 되돌렸다! 라고 기록하는 새 커밋을 만드는 것이므로, 언제든 이전 진행도로 돌아갈 수 있다고 이해했다.

별도로 기록해 두었던 내용을 옮겨 적습니다.

profile
함께 나아가고자 하는 사람

0개의 댓글