Git - 버전관리

김예찬·2021년 4월 21일
0

생활코딩 Git 2번째 정리 입니다😋

글의 모든 내용은 생활코딩 GIT2 - CLI를 토대로 작성 되었습니다.

Git init

git init [폴더명] :  [폴더명]을 이제 git으로 관리하겠다는 명령어 입니다.

init 으로 시작하면 해당 폴더에 .git이 생기는 데, 여기서 형상관리 해주는 모든 것들이 담겨 있다고 생각하면 쉽습니다.

깃의 기본적인 버전 스테이지들은 3가지로 나누어 볼 수 있습니다.

Working treeStaging AreaRepository

working tree는 아직 git에게 형상 관리 받지 않고 있는 파일들이 올라가 있습니다.

Staging Area엔 add를 통해 git에 등록된 파일들이 올라옵니다.

Repository는 commit를 통해 형상 관리되는 파일들 입니다.

Git 버전 관리 명령어

  • git status : 현재 폴더의 상태를 알려줍니다.

  • git add [파일명 || .] : 현재 변경 사항이 있는 [파일명]이나 폴더의 모든 파일 [.]들을 working tree에서 staging area로 옮깁니다.

  • git commit -m "메세지" : staging area에 있는 파일 들을 "메세지"라는 사람이 식별할 수 있는 설명을 붙이고, repository에 옮깁니다. 변경 사항들은 같이 묶여 하나의 형상이 됩니다.

  • git log : 형상관리의 로그들을 보여 줍니다.
    | --stat | -p |

  • git diff : 이전 버전의 형상과 변경된 파일들의 차이를 보여줍니다.

  • git reset --hard : 변경된 내용들을 전부 이전 버전의 상태로 돌려줍니다.

  • git checkout [커밋(버전)아이디] : 커밋아이디로 저장되어 있는 폴더의 상태로 돌아갑니다.

  • git checkout [브런치] : 브런치가 가지고 있는 형상으로 옮겨갑니다.

    🙄 checkout은 뒤에 가르키고 있는 `상태`로 이동한다고 생각하면 쉽습니다.
  • git config --global core.editor "nano": 깃을 설정합니다 옆의 명령어는 깃의 글로벌 에디터를 nano로 변경해 줍니다.

  • git reset [커밋(버전)아이디] : 커밋아이디가 가지고 있는 버전으로 리셋됩니다.
    |--hard|--soft|

  • git revert [맨 나중의 커밋아이디]: 맨 나중의 커밋아이디를 되감기 시켜 맨 마지막의 전단계로 되돌려줍니다.

    reset은 커밋아이디 이후에 이루어진 모든 커밋들을 삭제 하지만, revert는 지금까지의 모든 커밋 다음에, [돌아가고 싶은 커밋 한단계 앞 커밋아이디] 이전 버전으로 commit 시켜줍니다. 즉, 모든 커밋들이 보존되는 개념입니다. 그렇기 때문에 revert는 최신 커밋의 한단계식 역순으로 내려가야 합니다.

profile
프론트엔드

0개의 댓글