일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 자바스크립트 객체
- 자바스크립트 기본 문법
- 자바스크립트 prototype
- 카카오프로젝트100
- 자바스크립트 element api
- Oracle SQL
- 보안뉴스한줄요약
- 보안뉴스
- 다크웹
- 랜섬웨어
- 파이썬
- 자바스크립트
- 카카오프로젝트
- 자바스크립트 node
- oracle
- GIT
- php
- 오라클
- 카카오프로젝트 100
- javascript
- numpy
- ES6
- 보안뉴스요약
- oracle db
- 보안뉴스 한줄요약
- python
- 보안뉴스 요약
- 자바스크립트 jQuery
- 깃허브
- 자바스크립트 API
- Today
- Total
FU11M00N
[ git & github ] Git Rebase 특정 커밋 수정,삭제하기 본문
이 포스팅은 구름 에듀 강좌 나동빈 선생님 강의 "Git으로 시작하는 협업 및 오픈소스 프로젝트" 를 기반으로 작성되었습니다.
edu.goorm.io/learn/lecture/11528/git으로-시작하는-협업-및-오픈소스-프로젝트/info
- Git Rebase
커밋 메세지를 수정하거나, 특정한 커밋 자체를 제거하고자 할 때 효과적으로 사용됩니다.
실습을 위해 하나의 디렉토리를 생성하고 git init을 통해 초기화 시켜주겠습니다.
만들고 난 후 아무파일이나 하나 생성해줍니다. 생성 후 add, commit해줍니다.
그 다음 txt파일을 수정해준 후 다시 add commit 해주겠습니다.
그다음 파일을 지운 후 add commit 해줍니다.
이번엔 test2.txt 파일을 생성하고 add commit 해주겠습니다.
이제 Delete exam.txt 의 커밋 메세지를 수정해보도록 하겠습니다.
- Rebase
먼저 아래와 같은 명령어를 입력합니다.
git rebase -i HEAD~2
i : 인터레티브 모드 어떻게 수정할 건지 편하게 관리할 수 있다.
HEAD~2 : head를 기준으로 최근 2개의 내역만 확인 하겠다는 의미입니다.
아래쪽에 보면 다양한 명령어들이 소개되어있습니다.
이 중 reword 옵션은 커밋은 그대로 사용하되, 커밋 메세지만 바꿔주는 기능을 가지고 있습니다.
수정해주고, 저장을 해주면 바로 어떻게 커밋 메세지를 바꿀 것인지 표시된 페이지가 출력됩ㄴ디ㅏ.
여기서 커밋 메세지를 Delete 가 아닌, Drop으로 바꿔주겠습니다.
그리고 저장 후 git log 명령어를 통해 다시 로그를 확인한다.
Drop 으로 변경된 것을 확인할 수 있습니다.
만약 특정 커밋을 넣어주고 싶거나, 혹은 너무 head와 떨어져있는 커밋을 수정해야 한다면 해시값을 통한 수정도 가능합니다.
아래와 같은 형식으로 사용하면 됩니다.
git rebase -i 해시값
이렇게 해시 값을 넣게 되면 넣은 이 값을 기준으로 head (젤 최근 커밋 된 곳)까지 출력이 됩니다.
- 특정 커밋 자체를 삭제하기
git rebase -i HEAD~2
위 명령어를 다시 입력하겠습니다.
옵션 중 drop은 커밋을 지워주는 역할을 합니다. 없애고자 하는 커밋을 drop키워드를 넣고 저장해주겠습니다.
이후 커밋 로그를 출력해보면, 커밋이 사라진 것을 확인할 수 있습니다.
'Git' 카테고리의 다른 글
[ git & github ] Git Commit 날짜 변경 하기 (0) | 2021.02.18 |
---|---|
[ git & github ] Git 환경 설정 하기(feat. Git config) (0) | 2021.02.18 |
[ git & github ] Git Archive , 깃허브 소스코드만 압축하기 (0) | 2021.02.18 |
[ git & github ] Git Hub README.md 작성하기( feat. 마크다운 Language) (0) | 2021.02.18 |
[ git & github ] Git 로그 | GitHub Log 관리 (0) | 2021.02.18 |