working tree : 수정한 내용이 들어있음
staging area : 수정한 내용 중에서 버전(commit)을 만들고 싶은것을 staging area에 올림
repository : staging area 의 변경 사항을 commit을 하면 변경사항이 repository 로 옴
git init . : Initialize repository, 현재 폴더를 git에게 버전관리를 하도록 초기화
.git : git repository, 버전이 저장되는 저장소
git status : working tree status, git의 지금 상태를 출력
git add ‘파일명’ : add to staging area, 파일을 버전관리 하기 위해 staging area에 올림(파일명 대신 . 을 찍으면 현재 폴더의 모든 파일을 add, 폴더명도 가능)
git commit : create version (-m : 커밋 메세지, -am : add + message add와 commit을 한번에 함), 버전을 repository에 저장
git log : show version (-p : 버전의 변경사항을 보여줌)
git diff : show changes, working tree에 작업 내용과 마지막 버전의 차이점을 보여줌
git reset --hard : 현재 working tree 작업을 모두 지우고 마지막 버전 상태로 됨
git checkout ‘commit id’ : 버전을 commit id 시점으로 되돌림 (master : 가장 최신 버전)
git config --global core.editor “nano” : 기본 에디터를 nano로 설정
git reset --hard ‘버전id’ : id 상위 버전은 지우고 버전 id로 가겠다 + 수정하던것(working tree) 까지 지움,--soft, --mixed 로 하면 수정하던거 그래로 있음
git revert : ?
<앞으로 공부할 것>
https://opentutorials.org/course/3839/22752
diff tool
.gitignore
branch
tag(commit id 대신)