일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- burp suite
- 메소드
- 파이썬
- element 조회
- document
- 포인터
- window
- sql injection
- 자바스크립트
- 조건문
- xss game
- property
- 배열
- 백준 파이썬
- xss game 풀이
- IF문
- blind sql injection
- 사칙연산
- 함수
- Pwndbg
- object
- suninatas 풀이
- htmlspecialchars
- lord of sql injection
- 객체
- 김성엽 대표님
- python
- 백준 알고리즘
- jQuery
- github
- Today
- Total
power-girl0-0
[GIT] Git Rebase 명령을 이용해 특정한 커밋 수정/삭제 하기 본문
해당 게시물은 나동빈 님의 'Git으로 시작하는 협업 및 오픈소스 프로젝트'강의를 바탕으로 작성된 것입니다.
스스로 공부한 것을 정리하고 복습하기 위한 목적으로 작성하였습니다.
깃(Git)의 rebase 명령은 커밋 내역을 수정하고 삭제하고자 할 때 사용할 수 있다.
아래 실습을 통해 알아보자.
먼저 실습을 위해, 하나의 깃 프로젝트를 생성한다.
하나의 텍스트 파일을 추가한 뒤에 commit해준다.
이후에 텍스트 파일에 내용을 작성한 뒤에 commit한다.
다시 해당 텍스트 파일을 삭제한 뒤에 다시 commit 한다.
이번에도 새로운 텍스트 파일을 생성한 뒤에 commit 한다.
이제 git log를 확인해보면, 아래와 같이 총 4번의 commit이 이루어져 있는 것을 확인할 수 있다.
해당 실습에서는 중간에 있는 [Delete test.txt] 의 commit 메시지를 수정해 보겠다.
수정
커밋 메시지를 수정할 때 git rebase 명령어를 사용한다.
-i 옵션을 붙이면 상호작용(Interactive) 모드로 에디터가 열리게 된다.
아래 명령어는 HEAD를 기준으로 3개까지의 커밋을 확인하는 명령어이다.
git rebase -i HEAD~3
그러면 아래와 같이 커밋 내역이 차례대로 출력된다.
이제 여기에서 수정하고자 하는 커밋에 대한 내용을 에디터에 적는 방식이다.
커밋 메시지를 바꾸고 싶을 때는 reword 키워드를 사용하면 된다.
[Delete test.txt] 커밋의 메시지를 수정하도록 하겠다.
그러면 다음과 같이 새로운 에디터가 또 열리게 되고, 여기서 커밋 메시지를 바꾸면 된다.
결과적으로 다시 로그(Log)를 확인했을 때 아래와 같이 커밋 메시지가 변경된 것을 확인할 수 있다.
만약 특정 commit만 지정하고 싶다면, 아래와 같이 명령어를 작성하면 된다.
git rebase -i 9eef0e17b0f7e0a050c682603339716fce84071d |
삭제
특정 커밋 자체를 삭제하고 싶을 때도 마찬가지로 git rebase 명령어를 이용하면 된다.
다만, 다른 사람과 함께 작업하는 경우 커밋 자체를 삭제하는 것은 충돌이 발생할 수 있기 때문에 권장하지 않는다.
커밋 자체를 삭제하고 싶을 때는 drop 키워드를 이용하여 삭제해주면 된다.
결과적으로 삭제 이후에는 해당 커밋 내역이 아예 증발하게 된다.
'개발' 카테고리의 다른 글
[GIT] Git Commit의 날짜 변경 및 커미터(Committer) 변경하기 (0) | 2021.02.17 |
---|---|
[GIT] Git Config 환경 설정에 대해 알아보기 (0) | 2021.02.17 |
[GIT] Archive 명령으로 소스코드만 압축하기 (0) | 2021.02.17 |
[GIT] Git에서 소개글(README.md) 파일 작성하기 (0) | 2021.02.17 |
[GIT] Git 로그(Log) 다루기 (0) | 2021.02.17 |