6. Git 명령어

2020. 3. 3. 22:08Git

1. 설정하기

# git config --global user.name "이름" Git에서 커밋할 때 기록할 이름을 설정
# git config --global user.email "이메일" Git에서 커밋할 때 기록하는 이메일 설정

2. 저장소생성

# git init 저장소이름 명령을 실행한 위치에 <저장소이름>으로 저장소를 만듬
# git clone 저장소주소 <저장소주소>의 원격 저장소를 클론

3. 변경 내역 다루기

# git status 저장소의 상태 확인. 추적하지 않는 파일, 추적 중이지만 변경되어 커밋해야하는 파일 등 보여줌
# git diff 마지막 커밋과 현재 변경된 내용을 비교해 보여줌
# git add 파일이름 버전 관리를 하기 위한 파일 추적 시작. stage에 add
# git reset 파일이름 변경 내역이 생겨서 git add 명령을 실행해 커밋할 준비가 된 파일을 Staging 영역에서 제거. 파일의 변경 내역은 보존
# git commit -m "커밋설명메시지" git ad 명령을 실행해 커밋할 준비가된 (staged 상태인) 파일을 로컬 저장소에 <커밋설명메시지>로 커밋

4. 브랜칭

# git branch 저장소에 있는 브랜치 목록과 현재 브랜치를 보여줌
# git branch 이름 <이름>으로 브랜치를 만듬
# git checkout 브랜치이름 <브랜치이름>으로 현재 작업중인 브랜치 변경
# git merge 브랜치이름 현재 작업중인 브랜치에 <브랜치이름> 브랜치를 가져와 병합
# git branch -D 브랜치이름 <브랜치이름> 브랜치를 삭제

5. 추적 중인 파일 삭제와 변경

# git rm 파일이름 저장소에서 버전 관리중인 파일을 삭제. 그와 더불어 로컬 파일도 삭제. 삭제 기록이 저장소에 남음
# git rm --cached 파일이름 저장소에서 버전 관리 중인 파일만 삭제. 로컬 파일은 그대로 남음
# git mv 파일이름 변경파일이름 저장소에서 버전 관리중인 파일의 이름(혹은 경로)을 변경. 변경 기록이 저장소에 남음

6. 커밋하지 않은 상태로 임시보관

# git stash Staged 상태에 있는 커밋되지 않는 변경 내역을 stash라는 임시공간에 저장
# git stash pop stash에 마지막으로 저장된 변경 내역을 현재 브랜치에 적용
# git stash list stash에 저장된 변경 내역의 목록을 출력
# git stash drop 마지막으로 저장된 변경 내역을 삭제

7. 내역 살펴보기

# git log 현재 브랜치의 버전 내역을 출력
# git log --follow 파일이름 파일의 변경 내역들을 출력. 파일 이름의 변경까지 포함한 내역을 출력
# git diff 브랜치 ... 다른브랜치 대상이 되는 두 브랜치 사이의 파일들을 비교해 다른점들을 출력
# git show 커밋 대상 커밋의 메타데이터와 변경 내역을 출력

8. 커밋 취소하기

# git reset 커밋 대상 커밋 이후에 생긴 모든 커밋을 취소. 하지만 커밋과 함께 변경된 내역은 로컬 저장소에 남겨둠
# git reset --hard 커밋 대상 커밋 이후에 생긴 모든 커밋과 변경 내역을 대상 커밋 시점으로 되돌림

9. 원격 저장소와 동기화

# git fetch 원격저장소이름 원격 저장소의 모든 변경 내역을 로컬 저장소에 다운로드
# git merge 원격저장소이름/브랜치이름 원격 저장소의 대상 브랜치를 현재 작업중인 브랜치에 병합
# git push 원격저장소이름 브랜치이름 로컬 브랜치의 모든 커밋을 원격 저장소의 대상 브랜치에 업로드
# git pull 원격저장소이름 git fetch와 git merge 명령을 차례로 실행하는 것과 같은 명령.

 

'Git' 카테고리의 다른 글

8. Gitlab - SSL 적용  (1) 2020.03.05
7. GitLab - 설치 / 접속  (0) 2020.03.04
5. Git 고급  (0) 2020.03.02
4. Eclipse + Git 2  (0) 2020.03.02
3. Eclipse + Git  (0) 2020.03.02