2/9 git에 대하여

태량·2023년 7월 11일
0

버전관리란 ? 특정 시점의 버전을 다시 꺼내 올 수 있는 시스템.

  1. 명령어

    • git log - -all → head를 옮겨서 git log하면 그 다음 시점의 커밋들이 보이지 않게 되는데, 이때 사용하면 전부 보여진다.
    • git log —all —oneline → log 목록들을 간단하게 보여준다.
  2. 인텔리제이 Git → log 부분으로 가면 git graph를 볼 수 있다.

  3. Github에서 본인의 레포지토리에 멤버를 초대하는 방법

    → 레포지토리에 위에 탭중에 Setting 클릭

    → 왼쪽 사이드 바에 맨 첫번째 Collaborators 클릭

    → 그 화면에서 add People로 초대하고, 초대 받은 사람이 수락하면 끝!

  4. github 레포지토리의 이슈 부분을 잘 활용하자. → 커뮤니케이션 파트

Untitled

Untitled

  1. WiKI 탭은 지식을 정리하는 영역
  2. githum에서 레포지토리 새로운 프로젝트로 복사하기

Untitled

Untitled

  1. pull = fetch + merge 동작
  2. merge vs rebase
    • rebase - 선형적으로 로그가 보이게 하고 싶을 때 사용. base란 브랜치가 분기되기 전 공통의 부분이라고 보면 된다. rebase라는 의미는 마스터 브랜치의 base를 그전의 base가 아닌 issue2를 base로 삼게한다는 의미.
    • rebase의 작동원리는 간단하게 T2를 기점으로 그것과 m1를 병합해서 새로운 m1 version을 만들게 되고, 그리고 거기에 m2를 다시 병합하여 새로운 m2 version을 만들고, 결국에는 마스터가 그것을 가리키도록 한다. 그러면 아래와 같이 rebase 파트처럼 브랜치를 나눠서 작업한게 아니라 쭉 같은 브랜치로 작업한 것처럼 로그가 보이게 된다.
    • rebase가 동작할 수 있는 시점은 원격저장소로 push하기 이전까지!! 푸쉬 이후 rebase하면 안된다.

Untitled

  1. cherry pick
    • main 브랜치가 있고, other 브랜치가 있을때, 각각의 브랜치가 작업이 나아가던 도중 other 2 버전에서 추가된 o2만을 골라서 main 브런치에 넣고 싶을 때 사용.
  2. 3-way merge
  3. git flow
    1. master - 언제나 실행 가능한 상태를 유지 해야한다. 제품으로 출시될 수 있는 브랜치
    2. develop - 실행 가능한 상태를 만들어 가는 과정. 다음 출시 버전을 개발하는 브랜치
    3. release branch - 출시 준비하는 브랜치. 이번 출시 버전을 준비하는 브랜치
    4. feature : 기능을 개발하는 브랜치
    5. hotfix : 출시 버전에서 발생한 버그를 수정 하는 브랜치

git merge - -no -ff 를 사용하면 커밋 메시지를 병합시 남길 수 있다.

Untitled

profile
좋은 영향력과 교류를 위하여

0개의 댓글