git 명령어 Cheat Sheet

ain·2023년 10월 24일
0

git

목록 보기
3/3
post-thumbnail

git branch

1. branch 리스트 보기

git branch

2. branch 생성

git branch BRANCH_NAME
git branch feat/1

3. branch 지우기

  • 변경사항이 없는 브랜치 지우기
git branch -d BRANCH_NAME
git branch -d feat/1
  • 변경사항이 있거나 없거나 강제로 지우기
git branch -D BRANCH_NAME
git branch -D feat/1

4. branch 여러개 지우기

git branch | grep "BRANCH_NAME" | xargs git branch -D
git branch | grep "feature" | xargs git branch -D

feature가 포함되는 브랜치 전부 삭제

git checkout

1. 로컬에서 브랜치 이동

git checkout BRANCH_NAME
git checkout feat/1

2. 로컬에서 브랜치 생성 및 해당 브랜치로 이동

git checkout -b BRANCH_NAME
git checkout -b feat/1

3. 원격에만 있고 로컬엔 없는 브랜치로 이동 (switch안됨)

git fetch
git remote update

원격 상태를 업데이트 한 후에 checkout

git checkout REMOTE_BRANCH_NAME
git checkout feat/1

git commit / git push

1. stage에 올리기

git add FILE_PATH
git add .
git add src/datas/menu.ts

2. stage에 올라가있는지 아닌지 확인(수정된 파일 확인)

git status

3. 커밋푸시했는데 안 올라가있을 때(유실됐을때) 커밋 내역 확인

git reflog

4. fetch 하고 origin 코드 pull 땡기기

git fetch
git pull origin BRANCH

*git pull 은 단축키 ggl로 대체가능

  • 협업 할 때는 원격에 있는 다른 사람의 코드를 항상 내 로컬 코드로 업데이트 해줘야 하기 때문에 git pull을 수시로 해준다.
  • 내 코드를 다 커밋했는데 원격에 업데이트 된 코드가 있을 때는 push가 안된다. 이 때 pull을 땡기면 내가 이미 커밋한 상태에서 업데이트 된 원격 코드가 로컬로 들어오기 때문에 이 코드들도 하나의 커밋으로 올려줘야한다. (이렇게 되면 남이 작업한 것들이 내 커밋이 됨)
  • 내가 작업중이던 코드들은 stash해두고 git pull을 해준다음, 다시 stash pop을 하여 병합.

5. 커밋하기

  • 쌍 따옴표 바로 뒤에 오는 텍스트는 제목이 되고, 줄바꿈을 두번하여 커밋 내용 작성.
  • 한번만 줄바꿈하면 커밋 제목으로 인식
git commit -m "{COMMIT_MSG}"
git commit -m "Feat: commit title
dquote >
dquote > commit body commit body commit body"

6. 작업한 브랜치로 푸시하기

git push origin BRANCH_NAME
git push origin feat/1

*git push는 단축키 ggp로 대체가능

7. 원격 코드 로컬로 가져오기

git pull origin BRANCH_NAME
git pull origin develop

8. 브랜치에서 작업 후 PR 안날리고 develop에 머지하기

  • PR을 안날리고 메인에 바로 머지 하려면 git merge 명령어 사용
%feat/1 git push origin feat/1 
%feat/1 git checkout develop
%develop git merge feat/1
%develop git push origin develop

9. PR 날렸는데 자동으로 머지 안된다고 표시 될 때

  • Resolve Conflict를 눌러 충돌을 해결하고, 충돌을 해결했다는 버튼(Mark as Resolve)을 클릭
  • 완료 후 머지

10. 브랜치에서 작업 후 PR 날리고 원격에서 머지했을 때, 원격에 있는 develop 브랜치의 코드 로컬로 가져오기

  • 원격에 머지했다고 해서 로컬에서도 자동으로 머지 되는 것이 아님
%feat/1 git checkout develop
%develop git pull origin develop

11. 방금 올린 마지막 커밋 되돌리기(Abort Commit)

  • push 다 했는데 로컬에 원격과 fetch되지 않은 코드들이 있어 push가 되지 않을 때
git reset --soft HEAD^

*push 한 코드 되돌리는 방법은 커밋이 꼬이기 때문에 협업하는 상황에서는 쓰지 않도록 해야함

git stash

1. git stash

  • 내가 작업한 코드를 임시로 다른 장소에 저장한다. (stash는 사전적으로 "안전한 곳에 넣어두다" 라는 뜻)
git stash

2. git stash list

  • stash 된 코드들을 리스트로 볼 수 있음.
stash@{0}: ~
stash@{1}: ~

4. git stash apply

  • 마지막에 stash한 코드를 stash list에서 꺼내오기
git stash apply
  • 특정 stash한 코드를 stash list에서 꺼내오기
git stash apply stash@{1}

*stash@{1}를 꺼내옴

3. git stash pop

  • 마지막에 stash 한 코드를 꺼내고 stash list에서 제거 (apply와는 다르게 저장한 곳에서도 삭제)
git stash pop

origin 새로 등록

  • 기존 remote 삭제
git remote remove origin
  • remote 등록
git remote add origin REMOTE_URL
profile
프론트엔드 개발 연습장 ✏️ 📗

0개의 댓글