2022_12_14_TIL

jaegeunsong97·2022년 12월 15일
0

TIL

목록 보기
3/156
post-thumbnail

2022_12_14_TIL

MIND MAP


To do

  • About me
    • 운동 타바타 30분
    • 나만의 루틴 만들기
      • 새로운 내용들을 복습하고 정리하느라 시간이 없었다. 게을러지지말자~
  • DEV
    • 배운 것 TIL 작성
    • 깃허브 프로필 꾸미기
    • Git/Github 복습하기

TIL

Github에서 branch를 관리하는 방법에 대하여 그리고 무섯인지 또 응용하는 방법에 대하여..
아직은 글을 어떻게 써야하는지 도통 감이 잡히지 않는다. 아마 글 자체가 두서없이 적혀있어 가독성이 떨어질 가능성이 높을 것 같다.

Branch

  • branch는 분기(버전을 관리하는 것), 현재 작업중인 상태 그대로 별도의 새로운 폴더를 만드는 것이다.
  • 기본적으로는 master가 branch 이지만 이 master를 main branch 상태로 바꿔야 한다.
  • git switch -c (새 브랜치명): main 폴더에서 새로운 branch를 만드는 방법이다. 그리고 해당 branch는 log가 별도로 작성이 된다.
  • git branch -D(브랜치 명): branch 삭제

Merge

  • 말 그래도 합쳐서 새로운 커밋을 만들고 기록하는 것이다.
  • git merge (브랜치명): 병합을 할때 이런 방식으로 Merge를 해준다.
    • fast-forward: main 브랜치에 develop 브랜치의 commit 기록을 Merge 하는 방법
    • fast-forwad log: 기록은 새커밋이 만들어 지는 것이 아니여서 만들어 지지않는다.
    • git merge develop --no-ff: fast-forward방식으로 Merge 하지않고 일반적인 Merge 방법으로 한다는 것이다.
  • git log --graph --decorate --oneline: 그림으로 자세하게 보여주는 방법이다.
  • Merge conflict: 병합시 같은 위치(중복)이 되거나 하면, git상에서 어떻게 합쳐야 하는지 모르는 상태
    • accept both change: 2개다 나란히 작성
    • accpet incoming change: develop인 것만 작성
    • accpet current change: main인 것만 작성
    • 추후 git add -> commit 까지 해줘야 한다.

Rebase

  • Merge와 비슷하지만 다르다. 특정 branch를 기준(base)으로 커밋을 정렬 하는 것이다.
  • git rebase (특정 브랜치)
  • merge conflict
    • 과정동일 -> git add -> git rebase --continue
    • merge conflict 취소: git rebase --abort, merge conflict 상태에서 해야된다.

Pull request

  • 나의 담당 branch가 끝나면 시니어 개발자분 한테 Merge를 부탁하는 것이다.
  • branch
    • main: 사용자가 사용할 서비스 코드(최종)
    • develop: 서비스 배포 전, 모든 기능 통합 후 테스트 진행
    • feature/기능이름: 서비스의 기능을 분할, 기능 하나하나씩 구현하는 것
      • git branch feature/기능: 해당 기능 branch를 생성하는 것
      • git push --all: 한번에 기능들을 push 하는 것
  • github PR하기
    • 완료 후 local에 반영: git pull origin main
    • git fetch --prune: github상에서 해당 branch들이 삭제 되었다고 알려주는 것
      • 오류방지
      • git branch -D feature/기능 ...: PR가 Merge 된 이후, 삭제!(Merge 전에 삭제 X)
  • merge conflict 발생 시: PR에서 main과 feature branch를 병합해주고, VSC 상에서 pull 로 자료를 받아준다. -> 남은 feature와 함께 Merge를 해준다 -> push!

Issue & milestone

  • issue: github 상에서 구현할 기능/버그 fix등의 할 일을 정리하는 용도
    • label: issue가 어떤 카테고리인지
      • 보통 9개 씩있고, 추가로 생성 가능
  • milestone: issue의 집합 -> 진행상황 관리(%)
    • due date
    • 해당 기능 잡업들을 통틀어 아우르는 글
  • wiki: repo 내부에 project와 관련된 문서 작성 기능
  • actions: repo 특정 event 발생, 자동으로 특정한 기능 발생하게 하는 것

Today was

  • 09:00 기상
  • 09:15 ~ 09:30 샤워 및 정리
  • 09:30 ~ 12:00 깃 복습
  • 12:00 ~ 13:00 점심 먹기
  • 13:00 ~ 17:50 github 강의
  • 17:50 ~ 19:00 저녁 식사
  • 19:00 ~ 22:00 github 강의
  • 22:00 ~ 22:30 아무생각 안하고 진짜 누워 있기
  • 22:30 ~ 00:30 github 복습
    • 갈수록 어려워진다 집중해야겠다. 물론 처음 듣는 것이기 때문에 익숙하지 않아서 그런것!

Tomorrow do

  • About me
    • 운동 웨이트 30분
    • 나만의 루틴 만들기
    • 피아노 1시간
  • DEV
    • 배운 것 TIL 하기
    • Git/Github 복습하기
      • 내용이 전반적으로 어려워졌다. 복습 잘하자
profile
블로그 이전 : https://medium.com/@jaegeunsong97

0개의 댓글