git init 경로명
: 지역 저장소 생성, 경로명을 입력하지 않으면 현재 폴더에서 초기화된다.git branch : 현재 브랜치 목록
git branch 브랜치이름 : 브랜치 생성
git branch -D 브랜치이름 : 브랜치 삭제
git reset Head^
: 커밋한 내용을 다른사람과 공유했다만 절대 커밋을 취소해서는 안된다.git config
: 깃 설정git config (--global) user.name "사용자 이름"
git config (--global) user.email : "이메일 주소"
---> 로컬 저장소(글로벌 사용자)의 사용자 등록
git config --global color.ui auto : 깃 상태를 컬러로 보기
git config --unset 이메일주소 : 설정된 환경파일을 삭제
git commit --amend
: 바로 이전의 커밋을 수정한다1. git commit -m "some files commit"
2. git add forgotten file
3. git commit --amend : forgotten file이 추가로 commit되고
커밋메시지도 수정할 수 있다.
git log
: 깃 변경이력 확인git log -oneline : 해시태그와 커밋메시지를 한줄의 로그로 보여준다
git revert
: 이전 커밋과 반대의 내용을 커밋으로 추가하여 이전 커밋 내용을 되돌린다. 과거의 커밋 이력이 유지되며 다른 사람과 공유한 브랜치는 절대 하지 않는다.git status
: 깃 상태 확인git cherry-pick 커밋 체크섬
: 다른 브랜치의 특정커밋을 현재 작업 브랜치로 가져온다git merge --abort
: 진행중인 병합 중단하기, 병합 이전으로 돌아간다.Head
: 마지막 커밋 또는 현재 작업중인 커밋을 나타내는 포인터로 마지막 커밋 ID를 가리킨다, 브랜치가 이동하면 Head 포인터도 함께 이동한다. 즉 각 브랜치마다 서로 다른 Head 포인터를 가지고 있다.^
: 부모 커밋을 나타내는 기호로 헤드 포인터를 이동한다git checkout main^ : 1단계 부모커밋으로 이동
git checkout main^^ :2단계 부모커밋으로 이동
~
: 주어진 숫자만큼 상위 커밋으로 헤드 포인터 이동git checkout main~1 : 1단계 부모커밋으로 이동
git checkout main~3 : 3단계 부모커밋으로 이동
git checkout - : 이전 브랜치로 이동
git checkout -b 브랜치이름 : 브랜치 생성과 해당 브랜치로 체크아웃 동시에
git switch -c 브랜치이름 : 브랜치 생성과 해당 브랜치로 체크아웃 동시에
git switch - 최근에 헤드가 붙어있던 브랜치로 헤드가 이동한다
working
: 작업을 하는 공간satge영역
: tracked파일을 임시로 저장하는 공간으로 코드가아닌 추적파일의 상태를 기록한다. 파일의 변화이력이 있으면 unstage상태가 된다 따라서 수정된 파일은 스테이지 영역에서 잠시 제외되고 스테이지 영역에 재등록해야한다.repository
: 실제로 저장하는 공간untracked 상태
: 워킹 디렉토리에서 새로 생성된 파일인데 git에 의해 추적되지 않는 상태, git add로 tracked 상태로 변경한다.git rm --cached 파일이름 : 커밋을 안했을때
git reset HEAD 파일이름 : 커밋을 한 파일일 때
git mv 파일이름 새파일이름
git checkout -- 수정파일이름
git commit -a : 커밋을 하기전에 자동으로 모든 파일을 등록하는 과정을 수행
git commit -m "커밋메시지"
git commit -am "커밋메시지" : 파일을 스테이지 영역으로 등록하고 커밋메시지 등록