Git 기본용어들 본문
** 기본 용어들 ~
* Repository : 소스코드가 저장되어 있는, 여러 개의 Branch들이 모여 있는 디스크상의 물리적 공간 ( 저장경로나 공간 )
> Local / Remote Repository 로 구분
* Checkout : 특정 시점이나 Branch의 소스코드로 이동하는 것을 의미
> Checkout 대상 - Branch, Commit, Tag
> Checkout 을 통해 과거 여러 시점의 코드로 이동이 가능하다
* Stage : 작업할 내용이 올라가는 임시저장영역
> 스테이지를 이용해서 작업한 내용중 commit할 파일만 선별할 수 있다.
* Commit : 작업할 내용을 Local Repository 에 저장하는 과정
> 각각의 commit 별로 버전이 매겨진다 , 그리고 버전에 관한 설명으로 메시지(로그)로 남길 수 있다
> 되도록이면 commit을 아끼지 않는것이 좋다....
> 회사별로 commit 단위나, commit log format 을 정해놓은 회사나 팀도 있다. ( 사내 교육을 통해서 설정하자 )
* Tag : 임의의 commit 위치에 쉽게 찾아갈 수 있도록 붙여놓은 이정표
> Tag가 붙은 commit은 commit id ( version ) 대신 tag name으로 쉽게 checkout 이 가능하다
* Push : Local Repository 의 내용 중, Remote Repository 에 반영되지 않은 Commit을 remote repository 로 보내는 과정
> 권장 : Push 하는 순간 다른 개발자들도 영향을 받음, 검증되지 않은 코드는 push 하지 않도록 함 !!!!
* Pull : Remote Repository에서 싱크를 맞춘 버전 중에, 변경 내용을 로컬에 가져오고 싶을 때 !!
> 다른 팀원이 변경하고 push한 내용을 local 에 가져올 때
> Push 과정에서 conflict 가 일어나서 push가 거절될 수도 있다 !!
> 이럴때는 pull 을 통해 Remote repository의 변경 내용을 local repository에 반영하여 해결한 뒤 다시 push 해야 함
** Branch : 특정 시점 ( commit 단위 ) 에서 분기하여 새로운 commit으로 뻗어나갈 가지를 만드는 것 ( 분기점 )
> 개발의 주축이 되는 master branch ( main branch ) 에서 벗어나 다른 무언가를 시도해보고 싶을 때 branch를 낸다 ( 병행개발 )
> 하지만 최종적으로 다시 master branch 에 선택된 버전들이 merge ( 병합 ) 된다.
** Merge : Branch의 반대 개념으로 , 병합 과정
> Merge가 되는 두 Branch 사이에는 주종관계가 있다.
> Merge가 되는 과정에서 conflict 가 발생하면 , diff 를 수정하여 conflict를 해결한 뒤 merge를 진행 한다.
'BF 2024 > Git' 카테고리의 다른 글
Remote Repository 생성 (0) | 2022.03.29 |
---|---|
Local Repository (0) | 2022.03.29 |
Git 가입 및 global configuration 설정 (0) | 2022.03.29 |
Git 설치하기 ( Mac / m1 ) (0) | 2022.03.29 |
VCS와 Git 이란? (0) | 2022.03.29 |