git 명령어 모음

강인한·2022년 1월 23일
1

점차 업데이트 중 입니다

전역 설정 관련

전역 사용자 설정

  • git config --global user.name "inhan"
  • git config --global user.email "inhan@inhan.com"

사용자 및 이메일 확인

  • git config --global user.name
  • git config --global user.email

기본 브랜치 설정

  • git config --global init.defaultBranch main

  • tmi : 이전에는 master/slave 와 같이 브랜치를 구분했던 것들이 인종차별 문제로 대두되어 제거하는 의미에서 git에서도 기본 브랜치를 master 에서 main 으로 변경.

명령어 관련

git init

  • 빈 Git Repogitory를 생성하거나 기존 저장소에서 다시 초기화.
  • 현재 경로에서 git 을 사용하겠다고 정의
  • git init을 하면 해당 폴더에 .git 이란 숨김파일이 생성됨

git add

  • 작업 디렉토리(working directory) 상의 변경 내용을 스테이징 영역(staging area)에 추가
  • 소스 수정 및 추가 후 commit 전에 이루어짐
  • 내가 변경한 파일 중 전체를 add하거나 (git add .) 특정 파일만 add 할 수도 있음.

git status

  • 신규 파일 추가, 기존 파일 삭제 등 현재 폴더의 상황을 알려줌.

git diff

  • 상세 status를 보여줌.

git log

  • git 커밋 내역들을 보여줌.

git reset

  • 선택한 status로 되돌림
  • git reset --hard 시에는 이전 이력들이 완전히 지워짐
  • gir reset --mixed 또는 git reset --soft 시에는 uncommitted changes 상태로 감

git revert

  • 선택한 status 상태로 새로 커밋

실수로 git reset 했을 때 롤백 방법

  • git reflog를 하면 전체 기록들과 그 해시값이 나와있다. 해당 기록의 해시값으로 restore

기타

git branch aaa : aaa 브랜치 생성
git switch aaa : aaa로 브랜치 변경
git switch -c bbb : bbb 브랜치 생성과 동시에 이동
git branch -d bbb : bbb 브랜치 삭제
git branch -m aaa ccc : aaa브랜치를 ccc 이름으로 변경
git branch --all : 원격저장소의 브랜치까지 조회
git remote add origin dev : 로컬의 git 파일들을 원격저장소 dev 브랜치에 연결
git fetch : 원격 저장소 변경사항 확인
git rm 파일명 : 파일 삭제 후 staging area로 이동
git mv 원래파일명 바꿀파일명 : 파일명 변경 후 staging area로 이동


.gitignore 파일 관련

모든 file.c

  • file.c

최상위 폴더의 file.c

  • /file.c

모든 .c 확장자 파일

  • *.c

c 확장자만 무시하지 않을 파일

  • !not_ignore_this.c

logs란 이름의 파일 또는 폴더와 그 내용들

  • logs

logs란 이름의 폴더와 그 내용들

  • logs/

logs 폴더 안의 특정 파일 또는 파일들

  • logs/abc.c
  • logs/*.c

logs 폴더 안의 전체 file.c

  • logs/**/file.c

출처
https://www.yalco.kr/@git-github/1-6/
https://git-scm.com/docs/gitignore

profile
안녕하세요

0개의 댓글