Notion에 정리해 놨던 Git 관련 내용을 더 편하게 보기 위해 블로그에 정리했다.
(오른쪽 제목 태그를 통해 더 쉽게 찾아볼 수 있다.)
git init
로컬 Repository
를 생성한다.Git 저장소
를 만드는 것이다.staging area
: commit을 하기 전에 commit 할 파일들을 골라놓는 곳이다.repository
: commit 된 파일의 버전들을 모아놓는 곳이다.git add 파일명
stating area
로 파일을 staging
한다.git add 파일1 파일2
파일이 여러 개
있을 때 동시에 staging
을 할 수 있다.git add .
모든 파일
들을 staging
한다.git commit -m ‘메모’
버전을 생성
하는 것이다.git commit -am '커밋 메시지'
staging
과 commit
과정을 한 번에 처리한다.git add
로 버전 관리가 필요한 파일만 staging 하여 추려내고git commit
을 하여 기록한다.git status
깃의 상태를 확인
하는 명령어이다.git log --all --oneline
git log --all --oneline --graph
HEAD
: 내 현재 위치q키
로 종료할 수 있다.git log --stat
git restore --staged 파일명
git diff
git difftool 커밋아이디
git restore 파일명
git restore --source 커밋아이디 파일명
git restore --staged 파일명
git revert 커밋아이디
git revert HEAD
하면 편리하다.git reset --hard 커밋아이디
git clean
명령어를 찾아서 쓰면 untracked 파일들도 다 지울 수 있다.git reset --hard 커밋아이디
git reset --soft 커밋아이디
git reset --mixed 커밋아이디
git branch 브랜치이름
git switch 브랜치이름
브랜치이름
인 branch로 이동한다.git switch main
하면 된다.git status
를 입력하면 된다.git branch -M 바꿀이름
바꿀이름
으로 바꾼다.git branch -d 브랜치이름
git branch -D 브랜치이름
git merge 브랜치명
git switch main
입력하여 main 브랜치로 이동git merge 브랜치명
main branch
에 브랜치명 branch
를 합침git add 파일명
, git commit -m ‘메시지’
를 입력하여 새로운 commit을 생성해주면 브랜치 합치기가 끝난다.git merge --no--ff 브랜치명
으로 해서 강제로 3-way merge 할 수도 있다.git merge 브랜치명
) 랑 반대(이 땐 main 브랜치로 먼저 가서 함)git switch 새로운 브랜치
, git rebase main
git switch main
, git merge 새로운브랜치
git switch main
git merge --squash 브랜치명
--squash
옵션을 추가한다.git commit -m '메세지'
git branch -M main
git push -u 원격저장소주소 main
-u
: 방금 입력한 주소를 기억해두라는 뜻 이다.원격 repository 주소
: https:// ~ .gitgit remote add origin https:~.git
origin
이라는 변수에 원격저장소주소를 저장
해서 쓸 수 있다.git push -u origin main
이렇게 푸쉬할 수 있다.-u
를 붙여서 push를 1 번 했으면 git push 만 입력해도 알아서 잘 된다.git remote -v
git pull
하여 원격 저장소 내용을 가져온 뒤 한다.git clone (https://)원격저장소주소
.gitignore
파일을 하나 만들면 저장소에 올리지 않을 파일들을 쉽게 명시가능하다.git add .
해도 스테이징이 되지 않는다.git pull 원격저장소주소
git push
가 가능하다.git pull
하고 나서 git push
하면 된다.git pull 원격저장소주소 브랜치명
입력하면 특정 브랜치만 가져올 수 있다.origin 이라는 변수명
을 등록해 놨으면 당연히 사용 가능하다.-u
했었으면 git pull
, git push
까지만 입력해도 잘 된다.git pull
명령어는 git fetch + git merge
축약어이다.git fetch
: 원격저장소에 있는 commit 중에 로컬에 없는 신규 commit 을 가져오라는 뜻git merge
: 그걸 merge 하라는 뜻git log --oneline --graph
를 해보면 합쳐진 브랜치도 그림으로 나온다.git log --oneline --graph
를 해보면 합쳐진 브랜치는 안 나온다.git log --oneline --graph
를 해보면 합쳐진 브랜치는 나오지 않는다참고 유튜브 및 블로그
- [YouTube] 애플코딩 : https://www.youtube.com/channel/UCSLrpBAzr-ROVGHQ5EmxnUg
- [블로그] https://velog.io/@oseo
- [블로그] https://velog.io/@jinne808