git 명령어 모음
Updated:
git 명령어 모음
자주 사용하는 깃 명령어를 알아보자!
구조
코드는 세 단계를 거치면서 저장이 된다.
스테이징 => 커밋 => 원격 저장소
- git add <파일명> 으로 파일을 스테이징 상태에 놓는다.파일명>
- git commit 으로 스테이징 상태에 있는 모든 변경 사항을 커밋한다.(1번과 2번까지는 로컬에서 작업)
- git push로 커밋된 저장소를 원격 저장소(git hub)으로 밀어 넣는다.
기본 명령어
- 저장소 생성
git init
- 원격 저장소로부터 복제(로컬로 이동)
git clone <url>
- 변경 사항 체크 (코드가 변경된 파일 확인 시)
git status
- 특정 파일 스테이징에 올리기
git add <파일명>
- 변경된 모든 파일 스테이징
1. git add *
2. git add .
- 커밋
git commit -m "변경내용 적기"
- 원격 저장소로 보내기
git push origin <해당브런치>
- 원격 저장소 추가
git remote add origin <원격서버url>
커밋
- 커밋 합치기
git rebase -i HEAD~4 //최신 4개의 커밋을 하나로 합
- 커밋 메시지 수정
git commit --amend // 마지막 커밋 메시지 수정(ref)
- 커밋 이력 확인
git log // 모든 커밋로그 확인
git log -3 // 최근 3개의 커밋로그 확인
git log --pretty=oneline // 각 커밋을 한 줄로 표시
git reflog // reset 혹은 rebase로 없어진 과거의 커밋까지 이력 확인
- 커밋 취소
git reset HEAD^ // 마지막 커밋 삭제
git reset --hard HEAD // 마지막 커밋 상태로 되돌림
git reset HEAD * // 스테이징을 언스테이징으로 변경하기
사용자 이름&이메일 설정
- 유저 이름,이메일 확인
git config user.name
git config user.email
- 유저 이름,이메일 설정
git config user.name 추가할 이름
git config user.email 추가할 이메일
- 유저 이름,이메일 삭제
# 전역 설정을 삭제
$ git config --global --unset user.name
$ git config --global --unset user.email
# 개별 저장소의 설정을 삭제
$ git config --unset user.name
$ git config --unset user.email
브랜치
- master 브랜치를 특정 커밋으로 옮기기
git checkout <바꿀 브런치명>
git merge --strategy=ours master
git checkout master
git merge <바꿀 브런치명>
- 브랜치명
git branch // 로컬 브랜치 조회
git branch -r // 리모트
git branch -a // 로컬, 리모트 포함된 모든 브랜치 보기
- 브랜치 생성
git branch <새로운 브런치명>
git push origin <새로운 브런치명> // 새로운 브랜치를 리모트로 보내기
- 브랜치 삭제
git branch -D <삭제할 브랜치명> //local
git push origin :{the_remote_branch} // remote
- 리모트 브랜치 가져오기
git checkout -t origin/<가져올 브랜치명>