Git

[Github] Git 명령어 정리 (Git cheatsheet)

민돌v 2021. 5. 7. 17:45
728x90

내가 볼려고 쓰는 깃 명령어 정리

어느정도 순서대로 정리했다고 보면 됩니다.

CLI (Command Line Interface)

명령어 인터페이스라고 불리며, 텍스트 터미널을 통해 사용자와 컴퓨터가 상호 작용하는 방식을 뜻함

$ git log

commit한 이력을 볼 수 있음

HEAD -> main : 컴퓨터에 커밋 (HEAD: 지금 시점에 파일이 있는 위치)

origin/main : github repository에 커밋

git log에서 빠져나오기 -> q 타이핑

$ git status

커밋의 상태를 보여줌

$ git init

버전 관리를 위한 기본 폴더를 생성하는 명령어

$ git add [file name]

ex) git add test.txt

파일을 추가 등록하는 명령어

$ git add .

온점(.)은 현재폴더에 있는 모든 파일을 의미

$ git reset .

stage area에 올라간 git add 데이터 내리기

$ git commit -m "메시지"

m: 모든 커밋에 메시지 추가

help: 다른 옵션 도움말

$ git remote add [name][repository url]

ex) git remote add origin https://github.com//test.git

원격 저장소 위치를 설정하는 명령어

$ git push repository branch

ex) git push origin main

github에 업로드

$ git checkout commit#

ex) git checkout 6ac75fbe474f3ade4baff6aa81100614a93bf847

과거의 commit을 확인하고 싶을 때 checkout을 사용

commit# 확인: git log > 수정하고 싶은 commit # (노란색으로 표시되어있음)

$ git checkout main

현재 상태로 돌아옴

$ git reset --hard HEAD^

hard: commit를 git에서 삭제

HEAD^: HEAD 위치부터 1개 커밋(^) 삭제 (ex. ^^ 커밋 2개, ^^^ 커밋 3개)

위 명령어를 실행하면 한단계 커밋위치가 HEAD가 됨

=> github.com인 origin에서 커밋도 삭제해야함: $git push origin master --force로 강제로 푸시를 해야함

$ git reset HEAD^ (일명 복합리셋)

마지막 커밋 혹은 내가 선택한 커밋의 변경사항들을 unstage영역(작업영역)으로 옮기는 것

커밋만 삭제하고, 파일 변경 사항은 그대로 둠, 변경 사항들은 unstaged영역에 둠

커밋된 파일 내용을 유지하면서 작업영역으로 가져와 파일 내용을 수정할 수 있음

$ git reset --soft HEAD^

soft: 되돌릴 커밋의 변경사항을 stage 영역으로 옮김

$ git remote -v

원격저장소 목록을 보여줌

github은 git을 이용한 원격저장소임

$ git pull origin main

원격저장소의 코드를 가져옴

$ git checkout commit# -b

이름으로 commit#에서 브랜치 생성

$ git push origin

브랜치를 github에 업로드

$ git branch -d

브랜치 삭제

$ git branch

branch 목록

$ git commit --amend

커밋 수정: 가장 마지막 수정

옵션=> -m : 메시지 추가, --no-edit: 메시지 수정x

$ git clone <내 저장소에 fork된 repository URL> <저장할 폴더명>

fork된 코드를 작업하기 위해 내 컴퓨터로 코드를 내려받음

참고 : https://blog.naver.com/gzero1728/222146699165

반응형