반응형
항상 IDE를 통해 GitHub을 사용하다 보니 Git Bash를 사용하려고 할 때마다 명령어들이 너무 헷갈려서 괴롭다.
이 참에 자주 사용하는 명령어들을 정리한다. 이렇게 정리하면서 제발 다음에는 내 머릿 속에 있기를 바라며..
사용자 이름과 이메일 설정
※ 참고사항: Git의 설정 범위는 아래와 같이 3가지이며 일반적으로 이름과 이메일은 global로 설정한다.
- 지역(local): 특정 저장소에만 한정되는 설정
- 전역(global): 현재 사용자의 모든 저장소를 포함하는 설정
- 시스템(system): 해당 컴퓨터의 모든 저장소와 모든 사용자를 포함하는 설정
$ git config --global user.name 사용자이름
$ git config --global user.email 사용자이메일
사용자 이름과 이메일 설정 확인
$ git config user.name
$ git config user.eamil
# 전체 global 설정
$ git config --global --list
사용자 이름과 이메일 설정 삭제
# 특정 사용자 이름/이메일 삭제
$ git config --global --unset user.name 사용자이름
$ git config --global --unset user.email 사용자이메일
# 전체 사용자 이름/이메일 삭제
$ git config --global --unset-all user.name
$ git config --global --unset-all user.email
로컬 저장소(Repository) 생성
저장소를 생성하고자 하는 폴더로 이동 후 마우스 우클릭하여 Git Bash Here 클릭 후 아래 명령어 실행
실행 후 해당 폴더에 .git 폴더가 생긴 걸 확인할 수 있다.
$ git init
Remote 등록
위에서 생성한 로컬 Git 저장소와 Git Hub의 원격 저장소를 연결해준다.
이를 위해 Git Hub에서 연결하고자 하는 저장소의 주소를 해온 후 아래 명령어를 실행한다.
이때 Git Hub의 원격 저장소 URL을 별칭으로 접근할 수 있도록 설정할 수 있는데 아무런 값이나 설정할 수 있지만 일반적으로 oringin 으로 설정한다.
$ git remote add 별칭 원격저장소주소
# 일반적으로 아래와 같이 설정
$ git remote add origin 원격저장소주소
# 별칭 목록 가져오기
$ git remote
# 별칭 목록과 URL 모두 가져오기
$ git remote -v
코드 Push
개발 중인 Code를 비어있는 Git Hub 원격 저장소에 추가한다.
코드의 변경사항을 Git Hub의 원격 저장소에 반영하는 과정은 일반적으로 아래와 같다.
- add 명령어를 사용하여 변경 사항을 스테이징 영역(Staging area)에 추가
- commit 명령어를 사용하여 스테이징 영역의 변경 사항을 로컬 저장소에 반영
- push 명령어를 사용하여 로컬 저장소의 내용을 원격 저장소에 반영
※ 참고사항: Git의 영역은 다은과 같이 3가지로 구분된다.
- 워킹 디렉토리(Working Directory): 개발자가 직접 코드 작업을 하는 영역이다.
- 스테이징 영역(Staging Area): git add 명령을 실행한 파일들이 저장되는 영역으로 저장소 영역에 들어가기 전 소스 코드를 검증하기 위한 영역이다. 스테이징 영역에 없는 코드들은 저장소 영역에 올릴 수 없다.
- 저장소 영역(Git directory): 스테이징 영역에서 git commit 명령을 실행한 파일들이 모여 있는 영역이다. 로컬 저장소라고도 부른다.
# 특정 파일 추가
$ git add 파일명
# 특정 확장자를 가진 파일 추가
$ git add *.java
# 현재 디렉토리의 모든 파일 추가
$ git add .
# 작업 디렉토리의 모든 파일 추가
$ git add -A
# 저장소 초기화 후 한 번도 커밋하지 않았을 때 git add한 내용 취소하기
$ git rm --cached 파일명
# 첫 커밋 이후 git add한 내용을 취소하는 경우
$ git reset HEAD
$ git reset HEAD [FILE...]
# 스테이징 영역 상태 확인
$ git status
# 스테이징 영역에 있는 변경 사항 Commit
$ git commit -m '코멘트'
$ git push 원격저장소별칭 대상브랜치
# 원격저장소를 origin으로 설정했고 최상위 branch에 코드를 적용하는 경우 아래와 같이 실행
$ git push origin main
코드 Pull
워킹 디렉토리에 코드를 원격 저장소의 코드로 업데이트 하는 명령어
$ git pull 원격저장소별칭 대상브랜치명
반응형