사용자 등록
cd [git저장소 폴더] //로컬 사용자의 경우
git config [--global] user.name ["사용자 이름"] //global 옵션 사용시 전체 저장소에 사용자 정보 등록
git config [--global] user.email ["사용자 이메일 주소"] //global 옵션 사용시 전체 저장소에 사용자 정보 등록
INIT 초기화
git init [경로명]//경로가 없다면 해당 디렉토리[폴더]를 깃 저장소로 초기화 실행
STATUS 깃 상태 확인
파일을 생성하고 수정함으로써 변화한 파일들의 상태를 효율적으로 모니터링하기 위한 기능
git status
ADD 스테이지에 등록
워킹 디렉토리의 파일을 추적상태로 만드는 명령어
git add [파일 이름]
RM 파일 등록 취소(ADD 반대)
git rm [파일 이름]
옵션--cached 스테이지 영역에서만 등록된 파일을 제거
MV 등록된 파일 이름 변경
git mv [변경 전 이름] [변경 후 이름]
COMMIT 수정된 파일 이력 저장
git commit
옵션 | 설명 |
-a | add후에 commit-m : 명령어에 commit 부가 설명[커밋 메시지] 추가함을 알리는 옵션 |
-m "msg" | 커밋 메시지를 명령어에서 주는 옵션 |
LOG 로그 기록 확인
git log
옵션 | 설명 |
-숫자 | 해당 숫자 만큼 최신 로그를 출력 |
--pretty=short | 로그를 간단하게 출력하는 옵션 |
[파일 이름] | 파일이름을 주면 해당 파일의 로그를 보여준다. 없다면 전체 로그 기록을 보여준다. |
--graph [--all or 브랜치 이름 default = 현재 브랜치] | 브랜치의 흐름을 보여준다. |
SHOW 커밋의 상세 정보 확인
git show [커밋 ID]
DIFF 파일 간 차이 확인
git diff [커밋 ID or HEAD포인터]
아무런 값을 주지 않는다면 워킹 디렉토리와 스테이지 간의 차이를 보여줌
REMOTE 원격 저장소 연결
git remote -v //연결된 원격 저장소의 url과 별칭을 출력
git remote add [원격 저장소 별칭] [원격 저장소URL]
별칭의 디폴트 값은 origin이다.
git remote rename [변경 전] [변경 후]//별칭의 이름을 변경
git remote show 원격 저장소 별칭 // 원격 저장소의 상세 정보 출력
git remote rm 원격 저장소 별칭 //원격 저장소 연결 삭제
PUSH 서버에 전송
git push [원격 저장소 별칭] [브랜치 이름]
git push [원격 저장소 별칭] [브랜치 이름 :새로운 브랜치 이름]
브랜치의 커밋을 업데이트
git push [origin 원격 저장소] --delete [리모트 브랜치 이름] // 리모트 브랜치(원격 브랜치) 삭제
CLONE 깃 허브에서 깃 저장소 복제
git clone [원격 저장소 URL] [새폴더 이름]
PULL 서버에서 내려받기
자동으로 병합되는 방식
git pull
FETCH 서버에서 내려받기
코드를 내려받고 임시 브랜치를 생성하여 저장하며 pull 명령어와 달리 자동으로 기존의 브랜치에 병합되지 않는다.
git fetch [원격저장소url]
MERGE 명령어로 수동 병합
git merge 원격저장소별칭/브랜치이름
BRANCH 가상의 저장 공간
git branch // 브랜치 목록 출력
git branch [브랜치 이름] [커밋 ID] // 해당 커밋을 기준으로 새로운 브랜치 생성
git branch -v //브랜치 상세 정보 출력
git branch -u [원격 브랜치 이름] //업스트림 설정
git branch -d [브랜치 이름] //브랜치 삭제
git branch -D [브랜치 이름[ //브랜치 강제 삭제
CHECKOUT 수정된 파일 되돌리기
git checkout -- [수정된 파일 이름] //수정 파일을 되돌리면 이전 커밋 이후에 작업한 수정 내역은 모두 삭제함
git checkout [브랜치 이름 or 커밋 ID] // 해당 브랜치 or 커밋 ID로 이동
git checkout - //이전 브랜치로 이동
git checkout -b [브랜치 이름] //새로운 브랜치를 생성하고 이동
STASH 임시 저장
git stash [save] ["WIP : 메시지 ~~ "] // 스테시를 생성한다. save "msg"를 추가하면 스태시를 구별하기 위한 메시지를 입력이 가능함.
git stash list // 저장된 객체들의 목록을 출력
git stash show [-p] [stash@{0}] // 스태시의 내용 비교 -p 옵션 추가시에 상세 정보 출력
git stash pop //제일 마지막에 저장된 내용을 읽어 스태시의 내용을 복구
git stash apply // pop과는 다르게 스택에 저장된 스태시를 제거하지 않고 적용만하는 명령
git stash drop //스태시 삭제
MERGE 병합
git merge [브랜치 이름] // 해당 브랜치와 현재 브랜치를 병합
git merge --abort // 충돌시에 병합 명령을 취소한다.
REBASE 재배열
git rebase [이동할 브랜치 이름] // 현재 브랜치의 커밋들을 이동하는 브랜치로 이동
git rebase --abort // 충돌시 리베이스 작업 취소
git rebase --continue // 충돌이 수정된 파일을 통해서 리베이스 작업 재개
git rebase -i [HEAD~3]// 여러 커미슬 한 커밋으로 묶기, ex) 헤드부터 3가지 커밋을 합치기
RESET 복귀
git reset --soft [커밋 ID] //스테이지 영역을 포함한 상태로 복원
git reset --mixed [커밋 ID] // default : 위킹 디렉터리의 저장 영역에만 복귀 전의 내용이 저장
git reset --hard [커밋 ID] // 실제 파일이 삭제된 이전 상태로 복원
git reset [파일 이름] // 헤당 파일의 수정된 내용을 스테이지에서 제거
git reset --merge [커밋 ID] // 병합 취소
REBERT 되돌아가기
[커밋 ID] 와 같은 내용의 커밋을 생성하여 이전 커밋으로 되돌아가는 효과를 가지는 명령어이다. reset 명령어와 다르게 입력된 커밋은 삭제되지 않는다.
git rebert [커밋 ID]
'git' 카테고리의 다른 글
[Git] 지원하는 기능은 어떤 것이 있을까? - 기초 개념 (0) | 2021.10.18 |
---|