728x90
Git 교과서 도서를 학습하며 명령어를 정리.
중복된 내용이 있을 수 있다.
branch
- 깃을 초기화하면 master 브랜치가 자동 생성
- master 브랜치를 기준으로 다른 branch 생성
- 브랜치 이름은 중복 불가
- 체크아웃 브랜치를 할 때는 현재 작업하고 있는 워킹 디렉토리를 정리하고 넘어가야 한다.
- 워킹 디렉토리에 커밋하지 않은 파일이 있으면 브랜치 생성 불가 -> stash 를 사용해야 한다.
- 브랜치는 merge 후 삭제해 주어야 한다.
stash
- stash 는 stack 으로 구성되어 있다.
해시
- 깃은 SHA1 알고리즘을 이용해서 해시값을 생성한다.
- 해시값을 이용해서 로그를 확인할 수 있다.
- refs = 생성된 해시 값을 쉽게 참조할 수 있도록 refs 목록을 생성한다.
NO | 명령어 | 설명 |
1 | mkdir 폴더이름 | 폴더 디렉토리 만들기 |
2 | cd 폴더이름 | 폴더 이동 |
3 | git init | 폴더에 깃 저장소 추가 ( git 초기화 ) |
4 | git status | 상태확인 |
5 | git add | 스테이지 영역으로 추가 |
6 | git clone 원격저장소URL | 복제하기 |
7 | git commit -m "메시지" | 메시지 작성 + 커밋 |
8 | git add 파일이름 | 스테이지 올리기 ( 파일지정 ) |
9 | git rm --cashed | 다시 Untracked 상태로 변경 ( 한번도 커밋하지 않았을때 ) |
10 | git mv 파일이름 수정이름 | 파일이름 변경 |
11 | git checkout --수정파일이름 | 수정한 파일의 마지막 내용으로 되돌리기 |
12 | git commit --allow -empty -mesaage | 커밋메시지 작성X |
13 | git commit --amend | 방금 전 작성한 커밋 메시지 수정 |
14 | git diff | 커밋간의 차이 확인 |
15 | git reset head 파일이름 | add 한 파일 Unstage 로 변경 |
16 | git remote add origin 주소URL.git | 원격 저장소 연결 ( origin 이라는 이름의 명칭으로 생성 ) |
17 | git push origin master | origin 원격저장소의 master 브랜치로 푸시 |
18 | git pull | 최신 커밋 복제 |
19 | git fetch | 수동으로 내려받기 (브랜치 병합 X) |
20 | git merge 원격저장소이름/브랜치이름 | 병합하기 ( 원본 기준으로 다른 브랜치를 병합 ) |
21 | git branch | 브랜치목록 |
22 | git branch 브랜치이름 | 브랜치 생성 |
23 | git rev -parse | 해시값 확인 |
24 | git checkout 브랜치이름 | 브랜치 이동 |
25 | git checkout - | 이전 브랜치로 이동 |
26 | git checkout -b 브랜치이름 | 브랜치 생성과 동시에 이동 |
27 | git log --graph --all | 브랜치 로그보기 |
28 | git stash | 현재 작업을 임시 스택영역에 보관 |
29 | git stash list | 스태시 리스트 조회 |
30 | git stash show -p | 스태시 상세 내용 확인 |
31 | git stash pop | 임시 작업 재적용 |
32 | git stash branch 브랜치새이름 | stash 내용으로 새로운 브랜치 생성 (stash 는 삭제된다) |
33 | git stash apply 스태시번호 | 삭제하지 않고 복원 |
34 | git stash drop | 스태시 삭제 |
35 | git merge --haed head^ | 머지 취소 |
36 | git rebase 브랜치이름 | 리베이스 병합 (파생 브랜치에 원본 브랜치 병합) |
37 | git reset --soft | 지정한 커밋 위치로 바뀌지만 파일을 수정하고 add 명령어로 스테이지에 올려 커밋 실행하기 직전의 단계로 되돌린다 |
38 | git reset --mixed | soft 와 다르게 스테이지에 올리지 않는다. 변경된 소스는 남아있다 |
39 | git reset --hard | 전체 삭제 및 되돌리기 |
40 | git log --oneline | log 기록을 한줄로 조회 |
41 | giut diff head | head 의 변경 내용 조회 |
42 | git tag | 태그 조회 |
43 | git tag -a 태그이름 | annotated 태그 생성 |
44 | git tag -d 태그이름 | 태그 삭제 |
45 | git tag 태그이름 | lightweight 태그 생성 |
46 | git tag -a 태그이름 커밋ID | 커밋 ID 를 지정해서 태그 생성 |
47 | git checkout -b 브랜치이름 태그이름 | 태그 기반으로 새 브랜치 생성 후 커밋 |
48 | git remote add origin 깃 주소 | 원격 저장소 생성 |
49 | git remote -v | 원격 저장소 목록 |
50 | git push 브랜치이름 | 원격 저장소 push |
51 | git push 태그이름 | 원격 저장소 push |
52 | git push origin --tags | 모든 태그 전송 |
53 | git push --delete origin 태그이름 | 원격저장소 태그 삭제 (로컬은 삭제 X) |
54 | git tag -d 태그이름 | 로컬저장소 태그 삭제 |
55 | git push origin 1.1.2:3.0.0 | 1.1.2 태그를 3.0.0 이름으로 태그 저장 |
56 | git show 해시값(6글자) | 해시값을 사용해서 로그 확인 |
57 | git rev-parse master | 포인터의 해시값 확인 (master 브랜치의 해시값) |
58 | ls .git/refs -all | 저장소 refs 파일 목록 |
59 | git reflog | 작업한 모든 HEAD 와 브랜치 조회 시스템에서 정의한 며칠 간의 기록만 보관 |
728x90
'Git' 카테고리의 다른 글
git add 취소하기 (0) | 2022.12.09 |
---|---|
깃(GIT) 이란 무엇일까? (0) | 2022.12.07 |
git - 지옥에서 온 git (0) | 2022.11.29 |
댓글