● Mac OS
$ git config --global core.autocrlf input
● Windows
$ git config --global core.autocrlf true
$ git config --global user.name 'MY_NAME'
$ git config --global user.email 'MY_EMAIL'
$ git config --global core.editor "vim"
$ git config --global core.pager "cat"
// Q키를 눌러 종료!
$ git config --global --list
$ git init
// 파일 상태 확인
$ git status
// 커밋에 특정파일 변경사항을 포함
$ git add FILE_NAME
// 커밋에 모든 파일의 변경사항을 포함
$ git add .
// 커밋 생성
// -m을 안 쓸 경우(권장)
$ git commit
// -m을 사용할 경우
// 오타 수정 불가, 덮어쓰기 오류 발생 가능성 있음
$ git commit -m 'COMMIT_NAME'
// origin이라는 별칭으로 remote 주소 등록
$ git remote add origin (주소)
// 등록된 원격서버 주소 보기
$ git remote -v
// origin 별칭으로 등록된 remote 주소에 master 브랜치 업로드하기
$ git push origin master
// remote와 local 브랜치 싱크를 맞춰 업로드
$ git push -u orign NEW_BRANCH
// 원격서버에 저장된 프로젝트를 내려받고, 현재 위치한 브랜치로 통합
$ git pull origin BRANCH_NAME
// 브랜치 목록
$ git branch
// 새 브랜치 생성
$ git branch BRANCH_NAME
// 브랜치 삭제
$ git branch -D BRANCH_NAME
// 다른 브랜치로 이동
$ git switch BRANCH_NAME // 신버전
$ git checkout BRANCH_NAME // 구버전
// 브랜치 생성&이동
$ git branch -b BRANCH_NAME
$ git log
$ git clone (저장소 주소)
버전 삭제 후 되돌리기
reset
은 이전에 작업했던 commit 기록을 삭제하기 때문에, 권장되지 않는 방법입니다.
// 직전 @개 commit 삭제 후 remote에 강제 push
$ git reset --hard HEAD~@
// 변경 직전 커밋으로 리셋
$ git reset --hard ORIG_HEAD
버전 삭제하지않고 되돌리기
// 직전 @개 commit을 순서대로 거슬러 올라가 해당 내역에 대해 commit, push 수행
$ git revert --no-commit HEAD~@..
최신 commit으로 파일 내용 되돌리기
git restore NEW_FILE // 신버전
git checkout -- NEW_FILE // 구버전
워킹디렉토리에서 add 된 파일 되돌리기
$ git reset HEAD NEWFILE
commit 메세지 수정하기
$ git commit --amend
// 현재 브랜치에 다른 브랜치 수정사항을 병합
$ git merge BRANCH_NAME
// 태그 생성
$ git tag TAG_NAME
// 태그를 원격저장소에 업로드
$ git push origin TAG_NAME
// 태그 삭제
$ git tag -d TAG_NAME
// 원격저장소에 업로드한 태그 삭제
$ git push origin :TAG_NAME
// 모든 태그 올리기
$ git --tags