평소 많이 쓰는 git 명령어 및 개념 모음! 알아두면 좋을 것 같은 옵션들도 같이 정리했다.
$ git --version
$ git config --global user.name "이름"
$ git config --global user.email "이메일"
ex) git config --global user.name kim
ex) git config --global user.email example@email.com
$ git init
$ git status
git add
로 파일을 추가하고 난 후 git status
로 작업 디렉토리(working directory)와 스테이징 영역(staging area)의 상태를 확인한다.$ git add 파일/디렉토리 경로
: 스테이징 영역에 넘길 파일 또는 디렉토리 경로를 입력$ git add .
: 현재 디렉토리의 모든 변경 내용을 스테이징 영역으로 넘긴다.$ git add -A
: 작업 디렉토리 내의 어디에서든지 모든 변경 내용을 스테이징 영역으로 넘긴다.$ git add -p
: 각 변경사항을 터미널에서 하나씩 출력하며 스테이징 영역으로 넘기거나 제외$ git commit -m “커밋메시지“
-m
: 커밋 메세지를 입력한다.$ git commit -am “커밋메시지“
-a
: commit 명령어를 실행하기 전에 워킹 디렉터리에 있는 파일을 스테이지 영역으로 등록한다.-a
를 사용할 수 없다. git add
명령어를 수행 후 -a
를 사용할 수 있다.$ **git log**
메시지가 없는 커밋
- ‘빈 커밋’이라고 한다.
- 의미가 없는 커밋이라 커밋 메시지를 생략하고 싶을 때 사용할 수 있다.
- $ git commit --allow-empty-message -m ""
출처) Git교과서 : 4장 커밋
$ git log
$ git checkout 커밋hash값
git log
에서 보이는 커밋 hash값이다.
→ 원하는 운영체제, 개발환경 또는 프로그래밍 언어를 넣고 생성을 누르면 아래와 같이 자동으로 생성된다.(복사 붙여넣기하면 됩니다)
$ git branch
$ git checkout 브랜치명
git checkout develop
Git 2.23버전 이후 변경사항
checkout 명령어가 가진 기능이 너무 많아서 명령어를 분리했다고 한다.
switch
restore
``
$ git branch 브랜치명
- develop 브랜치에서 feature/header 브랜치를 분기시킨 후에 바로 새 브랜치로 이동하고 싶다면?
$ git checkout -b 브랜치명
- develop 브랜치에 위치한 상태에서$ git checkout -b feature/header
$ git branch -m 바꿀브랜치명
$ git merge 브랜치명
git merge develop
$ git branch -d 브랜치명
-d
: 브랜치가 원격에 push되고 merge된 경우에 사용-D
: push, merge가 안되어있어도 강제로 삭제 가능git branch -M main
작업이 추가되었다.새 레포지토리를 만드는 경우
1. git init
2. git add .
3. git commit -m "commit 메세지"
4. git branch -M main
5. git remote add orign 레포주소
6. git push -u origin main
이미 있는 레포지토리인 경우
1. git remote add orign 레포주소
2. git branch -M main
3. git push -u origin main