Working Tree : 버전이 만들어지기 전 단계
Staging Area : 버전을 만드려는 파일들을 지정하는 곳
Repository : 버전이 저장되는 곳 (작업 폴더 내의 .git 폴더)
ex) 작업 파일 10개가 Working Tree에 올라가 있는데 이 중에서 파일 2개만 골라서 하나의 버전으로 만들고 싶은 상황
git add 파일명 : 지정한 파일만 Staging Area에 올라감
git commit -m "설명" : Staging Area에 올라간 파일을 Repository에 저장
git status 명령어를 통해 파일의 현재 상태를 확인할 수 있음
(Working Tree에 올라가 있는지, 파일이 수정되었는지, 커밋 되었는지 여부 등)
pwd : 현재 위치 보기
ls : 현재 위치의 폴더목록 보기
cd 폴더네임 : 현재 위치 변경
ls -al : 숨겨진 파일을 포함한 모든 파일 목록 보기
git log : git 기록 보기 (버전 기록)
git log --stat : 파일이 여러개일 때 각각의 파일마다 얼마나 수정되었는지 확인
git diff : 파일의 수정된 내용을 보여줌
git reset --hard : working tree에 올라가지 않은 상태의 파일 작업 내용을 이전 작업 내용으로 되돌림
git init . : 현재 디렉토리에서 버전 관리 시작
nano 파일명.txt : 텍스트파일 생성하여 안에 내용을 작성할 수 있음
cat 파일명.txt : 텍스트 파일 내의 내용을 출력함
git status : 현재 파일의 상태 보기 (커밋 되었는지 여부)
git add 파일명 : Staging Area에 파일 올리기
git add . : 현재 디렉토리에 있는 모든 파일의 내용을 Staging Area에 올리기
git commit -m "설명" : Repository에 파일 커밋
git commit -am "설명" : git add, commit을 한번에 처리
(다만 이전에 staging area에 올라가 있었던 파일의 경우에만 한정)
git log -p : 버전 간의 차이점을 비교
git checkout commitID : 특정 commitID를 입력하면 그 때의 시점으로 되돌아감
git checkout master : commit 최종 단계로 되돌아감
git reset --help : reset 설정 옵션 도움말 보기
git revert 현재commitID : 현재 commit을 이전 commit으로 되돌림 (이전 commit history는 삭제되지 않음)
Ref.
생활코딩
저는 이번주에도...상호님이 얘기한 to do list 버그 수정하고 있고
일단 어느정도 고친거 같아서 terminal로 github에 올리려고했는데 계속 오류가 나서
찾아보다가 git push /f 명령어를 알게되었는데 이게 쓰면...이전 history가 다 날라갔네요 ㅋㅋㅋㅋ ㅠㅠ