본문 바로가기
Git & Git-Hub 사용법

Git 명령어 모음, Git 코드 정리, 간단히 한 줄 정리

by 스프링섬머 2023. 7. 13.
728x90

Git 명령어 모음

 

< init >

git init : 현재 디렉토리에 .Git을 생성 ( 로컬저장소 생성 ), 초기화 과정이라고도 말함.

 

< add >

git add 파일명(확장자까지) : 커밋할 파일을 add함으로써 stage에 올린다

 

< checkout >

git checkout 해시체크섬앞7자리 : 해당 버전으로 돌아간다 ( 시간여행 ), checkout은 포인터라고 생각하면 됨.

git checkout 브랜치이름 : 특정 브랜치로 체크아웃할 때 사용합니다. 이름대신 커밋체크섬을 사용할 수도 있습니다.

git checkout -b 브랜치이름 커밋체크섬 : 특정 커밋에서 새로운 브랜치를 생성하고 동시에 체크아웃까지 합니다.

 

< remote >

git remote add origin 원격저장소주소 : 주소를 추가하는데 origin이라는 이름으로 추가함.

git remote -v : 원격저장소 목록을 보여줌

 

< push >

git push origin master : origin의 주소에 mastr(현재 브랜치)를 올리겠다

git push -u 원격저장소별명 브랜치이름 : 커밋들을 원격저장소에 업로드, -uupstream으로 원격저장소와 이어줌

 

< clone >

git clone 원격저장소주소 : 원격저장소의 모든 내용을 현재 디렉토리에 받겠다 ( .Git 파일도 포함 )

 

< etc >

pwd : 현재 폴더의 위츠를 확인

ls -a : 현재 폴더의 파일 목록 확인 (-a는 숨김파일도 본다)

cd : 홈 폴더로 이동

cd 폴더이름 : 해당 폴더 디렉토리로 이동

cd ../ : 상위폴더로 이동

mkdir 폴더이름 : 현재폴더에서 디렉토리 생성

 

< echo >

echo "기입할문장“ : 화면에 기입할문장을 출력

echo "기입할문장“ > file.txt : file.txt파일을 생성하고 내용으로는 기입할문장이 들어감

echo "기입할문장“ >> file.txt : file.txt에 내용을 추가

 

< status >

git status : Git 저장소의 상태를 알려줌.

 

< pull >

git pull : 원격저장소의 변경사항을 워킹트리에 반영 ( git fetch + git merge )

git fetch 원격저장소별명 브랜치이름 : 원격저장소에 브랜치이름에 해당된 변경된 커밋 사항들을 불러온다. 이는 새로운 branch를 형성하여 내용을 확인하고 merge할지 안할지 선택할 수 있따. 또한 이 브런치로 check out도 가능하다. 옵션을 생략하면 모든 원격저장소에서 모든 브런치를 가져옴

 

 

 

< diff >

git diff 비교1 비교2 : 2개의 커밋이 어떤점이 다른지 말해줌

ex) fetch로 최신커밋 정보를 받아오고 기존과 어느부분이 다른지 궁금할떄 사용 -> git diff HEAD origin/mater

 

 

< merge >

git merge 대상브랜치 : 현재 브랜치와 대상 브랜치를 병합할 때 사용

 

< rebase >

git rebase 대상브랜치 : 내 브랜치의 커밋들을 대상 브랜치에 재배치시킵니다.

 

< rm (remove) >

git rm -r 파일명 : 원격저장소, 로컬저장소에 있는 파일 삭제

git rm -r --cached : 원격저장소에서만 파일 삭제 후 commit해줘야함.

 

< .gitignore >

.gitignore : 작업공간에서 Git의 저장을 무시

사용방법 : vim .gitignore -> a입력(입력모드전환) -> 무시하려는 파일.확장자 입력 -> ESC(입력모드나가기), :wq(저장 후 나가기)

 

<도움말기능>

git help status

git help commit

git help add

 

< branch >

git branch 브랜치이름 : 현재 브랜치에서 새로운 브랜치를 생성합니다

git branch -d : 특정 브랜치를 삭제할 때 사용합니다. HEAD 브랜치나 병합이 되지 않은 브랜치는 삭제할 수 없다.

git branch -D : 브랜치 강제삭제. -d로 삭제할 수 없는 브랜치를 삭제합니다. 조심해야 합니다.

git branch -v : 로컬 저장소의 브랜치 목록을 보여줌

git branch -r : 원격 저장소의 브랜치 목록을 보여줌

git branch -rv : 원격 저장소에 있는 브랜치와 커밋요약도 보여줌니다.

git branch -a : 로컬,원격 저장소의 브랜치 목록을 보여줌

git branch -t 원격저장소별칭/브랜치이름 : 원격 저장소의 브랜치를 가져옴

git branch -b 생성할브랜치이름 원격저장소브랜치이름 : 원격 저장소의 branch 이름을 변경하여 가져옴

git branch -f 브랜치이름 커밋체크섬 : 커밋체크섬에서 새로운 브랜치를 생성. 커밋체크섬이 없을시 HEAD에서 브랜치를 생성합니다. 이미 있는 브랜치를 다른 커밋으로 옮기고 싶을 때는 -f 옵션을 줘야 합니다.

 

< tag >

git tag -a -m 간단한매세지 태그이름 브랜치이름 : 태그이름이 버전이고 브랜치이름은 생략하면 현재 HEADtag

git push 원격저장소별칭 태그이름 : 원격 저장소에 태그 업로드.

 

 

 

 

< reset >

*여기서 버전명은 해시태그섬(7자리)를 말합니다.

git reset --hard 버전명 : index취소(add하기전, unstaged), 워킹트리 보존 x

git reset --soft 버전명 : index보존(add보존, staged), 워킹트리 보존 o

git reset --mix 버전명 : inde취소(add하기전, unstaged), 워킹트리 보존 o

git reset 파일명 : 파일 언스테이징. 스테이징한 파일을 내린다. ( 기본 mix로 설정 )

 

 

< revert > -> 까다로우니 알아보고 사용

: 원격 저장소에 push한 상태에서 되돌리려면 사용.

git revert 버전명 : 과거의 특정 커밋을 새로 커밋하여 수정가능하게 함. 히스토리는 유지한체 특정 시점면 변경

->이미 원격저장소에 push한 상태에서 수정하고 싶을 때 사용합니다.

 

< commit >

git commit --amend -m "변경내용“ : 최신커밋내용을 변경함.

git commit -m “간단한설명” : 커밋(버전업)하면서 간단한 설명을 덧붙여 어느 부분이 변경되었는지 적어줍니다.

git commit amend -m "수정할내용“ : 직전 커밋의 매세지를 수정합니다.

 

< config >

git config --global user.email "Git Hub 메일“ : global 전역변수로 Git Hub 계정 정보를 등록

git config --global user.name "이름“ : Git Hub 이름 등록

git config --global/local/system <옵션명> : 여러 가지 옵션 설정 가능

git config --system cre.ediotor : 기본 에디터선택, ***책에서는 git.bash를 설치할떄 설정을 하는 것을 추천

git config --list : 설정한 것들을 보여줌

 

< log >

git log : 지금까지 커밋한 업데이트들을 모두 볼 수 있다. 해시체크섬, 커밋할 원격저장소 이메일, 커밋한 시간, 설명등이 나타남. 해시체크섬의 앞 7자리는 커밋 아이디를 나타냄.

git log --oneline : 업데이트를 커밋해시,제목 한줄로 간략히 나타냄

git log --oneline --graph --decorate : HEAD와 관련된 커밋들을 조금 더 자세히 보고 싶을 때

git log --oneline --graph --all --decorate : 모든 브랜치드을 보고 싶을 EO 사용

git log --oneline -n5 : 내 브랜치의 최신커밋 5개만 보고싶을 때

 
자세한 설명은 여기에,
728x90