Git & 버전관리


💾 Git

Git이란 컴퓨터 파일의 변경사항을 추적하고 여러 사용자들 간에 파일 작업을 조율하기 위한 대표적인 버전 관리 시스템(VCS)입니다.

버전 관리 시스템이란? 버전 관리 시스템은 파일 변화를 시간에 따라 기록했다가, 이후 특정 시점의 버전을 다시 꺼내올 수 있는 시스템입니다.
-> ✨ 버전 관리 시스템을 사용하면 이전 상태, 수정 내용 등을 쉽게 볼 수 있습니다.


💾 Git 용어

1. stage

stage는 커밋을 하기 위해 git add로 추가한 파일들이 모여있는 공간입니다.

2. commit

commit은 스테이지에 올라간 파일들의 버전을 생성합니다.

3. remote

remote는 원격이라는 뜻을 갖습니다. git에서는 원격 저장소(remote repository)를 뜻합니다.

4. branch

branch는 가지 또는 분기라는 뜻을 갖습니다. 원래 코드와 상관없이 독립적으로 개발을 진행할 수 있는 공간을 뜻합니다.
-> ✨ git의 장점

5. push

push는 원격 저장소에 커밋 내용(HEAD)을 업로드할 수 있게 해줍니다.

6. merge

merge는 다른 브랜치를 현재 브랜치에 병합하는 것을 의미합니다.

7. pull

pull은 원격 저장소에서 로컬 저장소로 소스를 가져오는 것으로, 버전을 비교해 최신 버전으로 동기화를 시키는 용어입니다.

8. clone

clone은 원격 저장소를 복제하는 것으로 main 브랜치를 자동으로 가져오며, remote도 add해 줍니다.

❗ git HEAD? HEAD가 표시된 커밋은 그 브랜치의 가장 최신 버전(마지막 커밋)을 뜻합니다.


💾 Git 명령어


분류 명령어 기능
시작 및 설정 git -v git의 버전을 확인합니다.
git init 프로젝트를 git 저장소(repository)로 생성(초기화)합니다. -> 버전 관리 시작
git config --global core.autocrlf true 윈도우 : CR, 맥,리눅스 : LF 개행 문자를 통일합니다.
git config --global user.name "이름" 사용자의 이름을 설정합니다.
git config --global user.email "이메일" 사용자의 이메일을 설정합니다. -> ❗ github과 동일
git config --global --list git 설정 목록을 보여줍니다.
git status git의 현재 상태를 보여줍니다.
저장소 git remote add origin 저장소 원격 저장소(remote repository)를 연결합니다.
commit git add 파일명 파일을 스테이지 영역에 추가합니다.
git add . 모든 파일을 스테이지 영역에 추가합니다.
git commit -m "메세지" 스테이지에 올라간 파일들을 커밋합니다. (버전 생성)
git log 커밋 내역을 확인합니다.
branch git branch git의 브랜치 목록을 보여줍니다.
git branch 브랜치명 브랜치를 생성해 줍니다.
git branch checkout 브랜치명 브랜치로 이동하는 명령어입니다.
git checkout -b 브랜치명 브랜치 생성 & 이동 명령어입니다.
push git push origin main 원격 저장소에 커밋 내용을 업로드합니다.
merge git pull 원격 저장소의 변경사항을 가져오고 병합합니다.
git merge 브랜치이름 현재 브랜치에 다른 브랜치를 병합합니다.
clone git clone 저장소 [dir] 원격 저장소를 복제합니다.

🤔 origin과 main의 차이

origin : 원격 저장소의 이름!

main : 브랜치 중 가장 중심이 되는 브랜치!


💾 Git process flow




자료 출처
이미지 출처

2개의 댓글

comment-user-thumbnail
2022년 9월 21일

자란다자란다자란다👏
저 깃 좀 알려주세요 지석님🤭

1개의 답글