생활코딩 Git 2번째 정리 입니다😋
글의 모든 내용은 생활코딩 GIT2 - CLI를 토대로 작성 되었습니다.
git init [폴더명] : [폴더명]을 이제 git으로 관리하겠다는 명령어 입니다.
init
으로 시작하면 해당 폴더에 .git이 생기는 데, 여기서 형상관리 해주는 모든 것들이 담겨 있다고 생각하면 쉽습니다.
깃의 기본적인 버전 스테이지들은 3가지로 나누어 볼 수 있습니다.
Working tree | Staging Area | Repository |
---|
working tree
는 아직 git에게 형상 관리 받지 않고 있는 파일들이 올라가 있습니다.
Staging Area
엔 add를 통해 git에 등록된 파일들이 올라옵니다.
Repository
는 commit를 통해 형상 관리되는 파일들 입니다.
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 [브런치] : 브런치
가 가지고 있는 형상으로 옮겨갑니다.
git config --global core.editor "nano": 깃을 설정합니다 옆의 명령어는 깃의 글로벌 에디터를 nano
로 변경해 줍니다.
git reset [커밋(버전)아이디] : 커밋아이디
가 가지고 있는 버전으로 리셋됩니다.
|--hard|--soft|
git revert [맨 나중의 커밋아이디]: 맨 나중의 커밋아이디
를 되감기 시켜 맨 마지막의 전단계
로 되돌려줍니다.
reset은 커밋아이디 이후에 이루어진 모든 커밋들을 삭제 하지만, revert는 지금까지의 모든 커밋 다음에, [돌아가고 싶은 커밋 한단계 앞 커밋아이디] 이전 버전으로
commit
시켜줍니다. 즉, 모든 커밋들이 보존되는 개념입니다. 그렇기 때문에 revert는 최신 커밋의 한단계식 역순으로 내려가야 합니다.