git note
working directory: 내가 작업한 파일들이 있는 내 컴퓨터의 디렉토리 (공간)
staging area: 리모트 레포지토리로 커밋을 수행할 파일들이 올라가는 영역.
local repository: 내 컴퓨터의 레포지토리. working directory에 있는 .git 폴더.
remote repository: github에 있는 원격 레포지토리.
일반적으로 내 working directory에서 파일을 수정하고 github에 반영하는 방법
1. 변경된 파일들을 staging area에 추가
git add [파일명] // staging area에 파일 추가
git add . // . 으로 모든 변경된 파일들 추가 가능
2. staging area에 있는 내역들을 커밋으로 local repository에 추가
git commit -m "수정 사항 입력"
3. local repository에서 remote repository로 푸쉬
git push
github에서 모든 파일들 가져오기 (clone)
git clone [github 주소]
remote repository와 local repository를 동기화 시키기. (remote repository 상태를 local repository로 가져옴)
git pull
나의 working directory에 수정된 사항있는지 확인
git status
커밋 내역 수정
git commit --ammend
나오는 에디터 화면은 윈도우에선 기본적으로 유닉스 에디터.
i 눌러서 수정모드로 진입후 수정.
esc 눌러서 편집모드 진입후 :wq 로 저장후 나오면 커밋 내역 수정됨.
커밋 내역 보기
git log
이전 커밋 상태로 되돌아가기
git log에서 나오는 해쉬값으로 해당 커밋했던 지점으로 되돌아갈수 있음.
git reset --hard [커밋 해쉬값]
이렇게 하면 해당하는 커밋 상태로 되돌아가고 이후에 커밋된 내용은 사라짐.
강제 push
local repository와 remote repository의 상태가 다르더라도 강제로 push함.
git push -f