개발/Etc

git 간단 명령어 모음

달리초이 2023. 1. 25. 21:49


[목차]

1. 설정 및 기초

2. git branch

3. git push, pull, clone


1. 설정 및 기초

이름, 메일 설정

git config --global user.name "~~~"
git config --global user.email "~~~"

 

설정 확인

git config --list

 

git초기화

git init

 

트래킹(전체파일)

git add .

 

커밋 with message

git commit -m "~~~"

 

위 작업을 한 번에

git commit -am "~~~"


로그 확인

git log

 

reset --hard : 모두 원복
reset --mixed : add 하기 전으로 (작업영역의 내용 변경이 더 필요할 때)
reset --soft : commit 하기 전으로 (주로 이전 커밋으로 돌아가려고 할 때)

git reset --hard [hashcode]

 

한번이라도 커밋한 내역 보고 돌아가기

git reflog


커밋메시지만 수정하려면. 편집기 열리면 수정하고 저장 후 종료.

git commit --amend


편집기 없이 바로 하려면

git commit --amend -m "~~~"


커밋 통합하기. vi에디터

git rebase -i HEAD~3

1. 제일 상단만 pick 으로 두고 그 밑에 전부 s(squash)로 변경 저장
2. 커밋 메시지 정리 후 저장

 

 

 

2. git branch

fast-forward merge : 형상이 같을 때
3-way merge : 형상이 다를 때

git branch [name] #브랜치 생성
git checkout -b [name] #브랜치를 만들면서 헤드를 이동
git merge [브랜치] #master에 헤드를 둔 상태에서 merge하려는 브랜치 병합

conflic 발생 시 수정 후 다시 merge

rebase 로그 정리(깔끔). pick, squash
과거로만 정리 가능. 최신부터 s, s, pick 할 때. d는 drop, r은 rename

git rebase -i HEAD~3


main 브랜치 체크아웃 상태에서 아래 명령어를 이용하면 커밋 안된 상태로 merge됨
rebase 할 필요없음

git merge --squash topic


fast-forward merge 할 때 로그 남기기

git merge --no-ff [브랜치명]

 

 

 

3. git push, pull, clone

push

업로드 병합

git init
git add .
git commit -m "~~~"


github 공간 연결

git remote add origin [git주소]


현재 연결된 github 주소 확인

git remote -v
git ls-remote


upload and merge 

git push origin main


브랜치 만들면서 올릴 때

git push origin [브랜치명]


전체 브랜치 모두 올릴 때

git push --all



# 번외 
연결 삭제

git remote rm origin


태그 달기. 현재 브랜치의 커밋에 태그 달림.

git tag [태그명]


태그 확인

git tag -n


태그까지 같이 올리기

git push --tags origin main

 


pull

다운로드 병합

git pull origin main


# 브랜치 다운 받을 때
- 방법1 : 모든 브랜치 다운로드

git checkout -b topic
git fetch origin # origin의 모든 브랜치를 로컬로 다운로드하며 동기화
git merge origin/topic


- 방법2 : topic 브랜치만 다운로드

git checkout -b topic
git pull origin topic


- 방법3 : 브랜치 생성 및 머지

git fetch origin
git checkout -b topic origin/topic



clone

복사

git clone [git주소]

 

 

git 기본 브랜치 master에서 main으로 변경하기

// master branch 상태에서
git branch -M main
728x90
반응형