상세 컨텐츠

본문 제목

항해 99 Day 01 - Git

항해 99

by KOBe24 2021. 11. 1. 23:02

본문

깃을 모르는 것은 협업을 위한 최소한의 준비가 안된 것이다.

깃이란?

  1. 프로젝트의 버전관리를 위한 도구이다. ex) 최종ver, 최종최종ver 등... 누가 언제 무엇을 변경했는가를 알려주는 버전관리 도구
  2. 작업단위를 나눌 수 있다. 한 사람이 만들어야 할 기능이 여러가지 일 수 있다. 로그인기능, 상품구매 등... 여러가지를 한번에 할 수 없다. 그렇기 때문에 작업단위를 나눠서 작업할 수 있게 도와줌
  3. 협업해서 하나의 프로젝트를 만드는데 유용. 여러사람들이 만든 기능들을 합칠 때도 사용할 수 있다.

깃헙이란?

  1. 깃을 공유하는 커뮤니티 서비스,
  2. 이슈를 제기하고 토론할 수 있는 서비스
  3. 다른 개발자들이 만든 프로젝트를 구경할 수 있는 공간
  • 다른 선배 개발자들의 좋은 코드를 읽어보자! (이것을 통해 배울 수 있다.)

버전관리를 안하는 회사는 더이상은 없다.

그렇다면 깃헙은 어떻게 하는가?

commit

커밋을 한다는 것은 누가, 언제, 무엇을 변경했는지 기록하는 것.

  • 개발자가 어느정도 프로젝트가 진행된 것 같으면 커밋을 진행
  • 이력만 봐도 무엇이 변경했는지 알 수 있다.

branch

독립적으로 작업을 진행하기 위한 개념

각가의 브렌치는 다른 브랜치의 영향을 받지 않기 때문에 독립적으로 작업 수행 가능

특정 버전의 깃을 중심으로 새로운 브랜치를 만듬

새로운 피쳐 브랜치에 있는 커밋들을 메인 브랜치로 합치는 과정을 거치게 됨.

repository

하나의 레포지토리 안에는 커밋들과 깃이 저장되어 진다.

혼자서 작업할 때는 내 pc(로컬레포)에서 작업해도 상관없다.

하지만 공동작업을 할 때는 원격 레퍼지토리를 사용할 줄 알아야 한다.

최신의 원격 레포를 자신의 레포로 가져오고 반대로 보내주기도 한다.

  • Pull - 원격 레포를 자신의 레포로 가져오는 것
  • Push - 로켈 레포를 원격 레포로 보내는 것
  • 컴플릭트 - 합쳐지는 상황에서 다른 사람의 커밋과 충동되는 상황.
  • 개발자가 직접 수정을 해줘야 함.

git status

현재깃의 상태를 보여주는 명령어

실수를 예방하기 위해 모르겠으면 git status 를 자주 사용하자.

Pull request

pull이라는게 원격 레포를 로컬 레포를 땡겨오는 것

어떤 레포를 특정 레포로 땡겨오는 것

pull request 다른 브런치에서 특정 브런치로 pull 을 하도록 요청하도록 요청.

작업순서

  1. 로컬레포의 메인브런치에서 pull받기
  2. 작업 브런치 생성하기
  3. 작업하기
  4. 커밋하기
  5. push하기
  6. 원격레포에서 pr(pull request)만들기
  7. merge하기

코드리뷰란?

다른 사람의 코드를 읽어보면서 질문도 하고, 제안도 하는 상호작용을 말한다.

스스로 만든 코드를 스스로 리뷰를 할 수 도 있고, 다른사람이 리뷰를 할 수 도 있다.

일단 동작하지만 이상한 코드를 만들 수 도 있다.

코드리뷰를 하는 이유!

  1. 문제를 조기에 발견 !
  2. 다른 사람의 코드를 보면서 학습의 기회를 얻음.
  3. 팀에서 발생한 문제는 팀이 해결!

대체 어떻게 코드리뷰를 하는건데?

코드를 작성할 때부터 이해하기 쉬운 코드를 작성한다.

로버트마티니 - 클린코드

의도를 명확히 나타낸다.

브런치 이름, 커밋메세지, PR 이름과 설명

관련글 더보기

댓글 영역