[Git&Github] 자주 사용되는 명령어 정리

Git 명령어 정리


$ git --version

: 깃 버전 확인

 

 

$ git config --global user.name "유저이름”

$ git config --global user.email "유저이메일주소"

: 깃 사용자 이름, 이메일 설정

 

 

$ git status

: 현재 내가 있는 위치, 상태 확인

  • --short : 간략하게
  • -help : status에서 가능한 옵션 알려줌

 

-untracked : git이 track하지 못한 파일

-tracked : git이 알고 있는 파일(저장소에 추가된 파일)

staging area에 들어가기 전

 

 

$ git add 파일명

: 파일을 staging area에 등록

  • A, —all : 모든 파일 등록

staging area에 들어간 후

 

 

$ git commit -m “메시지”

: 커밋

  • -m : 메시지
  • -a : staging area에 추가. 처음에는 add로 해야 함. 두번째부터 이 옵션 사용 가능

 

 

$ git branch <브랜치이름>

: 새로운 브랜치 생성

  • -d : 브랜치 지우기

 

 

$ git branch

: 이미 존재하는 브랜치들 확인

 

 

$ git checkout <브랜치이름>

: 해당 브랜치로 이동

  • -b : 브랜치 생성 및 이동

 

 

$ git merge <브랜치이름>

: 현재 브랜치에 해당 브랜치 병합.

: 단, 병합할 때는 반드시 master 브랜치로 이동한 후 병합!!

 

 

$ git fetch origin

: 원격저장소에서 change history 모두 가져오기

 

 

$ git diff origin/master

: 어디가 다른지 체크

 

 

$ git merge origin/master

: 로컬저장소에 merge

 

 

$ git pull origin

: fetch와 merge를 동시에(원격 → 로컬 반영)

 

 

$ git push origin

: 로컬 → 원격 반영

 

 

$ git revert HEAD —no-edit

: 가장 마지막 변경사항 되돌리고 commit

 

 

$ git reset 커밋해시값

: 특정 commit 장소로 저장소 버전 되돌리기

 

 

 

fork vs clone


  • fork : 내 github 계정에 복사. Pull Request로 반영
  • clone : 내 로컬 PC에 복사. Push로 반영(쓰기 권한 있는 경우에만)

 

 

- 일반적으로 fork 후 clone을 하여 작업하는 것을 권장

  1. 원격저장소 fork
  2. fork된 저장소 clone
  3. 작업 후 로컬저장소 commit
  4. 변경 사항 로컬저장소 push
  5. pull request 서브밋

 

 

 

.gitignore


.gitignore

: 공유하기 싫은 파일들 넣어두기

  • *.temp : .temp로 끝나는 모든 파일
  • temp/ : temp 폴더 안에 있는 모든 파일
  • temp?.jpg : temp{한글자}.jpg 모든 파일
  • !main.jpg : main.jpg 파일은 정규표현식에서 제외