2023.11.21 TIL

Oneik·2023년 11월 20일
0

📕오늘 학습한 내용

  • Branch 이해하기
  • HTTP 완벽 가이드

Branch 이해하기

Branch란?

  • 메인 프로젝트를 가상으로 복사한 것
  • 여러 개발자들이 동시에 작업할 수 있도록 도와주는 기능이다

Branch는 언제 생성해야할까?

  1. 새로운 기능을 개발할 때
    ex) feature/login, feature/select-product 등
  2. 출시를 준비할 때
    ex) release-1.3, release-1.4 등
  3. 출시 후 긴급히 수정해야할 때
    ex) hotfix-1.2.1 등

Branch를 생성하면 바로 병렬 사용 가능할까?

  • 아직 커밋하지 않았다면, 복사된 이전 브랜치의 상태를 그대로
    복사해온 것이기 때문에 가리키는 위치 또한 같다.
  • 복사한 브랜치에 커밋을 하게 되면 새로운 커밋을 가리키는 새로운 위치(pointer)를 가지게 되므로 병렬 사용이 가능해진다.

Git Branch 전략

  • 브랜치를 규칙 없이 사용한다면 어떤 목적으로 생성된건지,
    어떤 커밋에서 분기된건지 파악하기가 쉽지 않다
  • 따라서 브랜치를 효과적으로 관리하기 위한 워크플로우가 필요한데,
    그것을 Git Flow라고 한다
  • Git Flow는 크게 Fast forward와 3-ways 2가지가 나뉜다

Fast forward

  • main branch와 feature branch를 생성한 시점부터 feature branch에만 추가 구현 한 뒤 main branch와 병합하는 전략

3-ways

  • main branch와 feature branch를 생성한 시점부터
    main branch와 feature branch 모두 추가 구현한 뒤 서로 비교하여
    바뀐 것을 정리하여 병합하는 전략

🥺어려웠던 점

  • pointer
  • TCP 커넥션

❗느낀 점

Github... 생각보다 더 어렵다. pointer라는 개념은 아직 이해가 잘 안되고 실습하는 과정에서는 따라 하면 되니 merge 하는 과정이 쉽게 진행됐는데 혼자 한다면 헤매는 부분이 많을 것 같다. 더 부딪쳐 봐야겠다.

그리고 오늘부터 웹의 흐름을 이해하기 위해 HTTP 완벽 가이드라는 책을 읽기 시작했다. 아직 HTTP 개관 밖에 읽지 못했지만, 모르는 단어투성이라 이해하는데 시간이 오래 걸리는 것 같다.

그래도 이번에 개발 습관을 만들자고 마음먹은 만큼 포기하지 말고 끝까지 달려보자!

profile
초보 개발자의 블로그입니다

0개의 댓글

관련 채용 정보