본문 바로가기
System/Git

잔디 조작하기

by OdOp 관리자 2023. 10. 19.
SMALL

1일 1커밋이 목표인데, 가끔 까먹고 넘어가는 날이 있습니다. 그런 날을 위해 잔디 조작하는 법에 대해 알아보겠습니다. 

 

git log

우선 조작할 내용을 찾아야겠죠.

git log

제가 해당 레파지토리에서 커밋한 기록들을 확인할 수 있습니다. 

git log

위의 사진과 같이 제가 commit한 결과물을 볼 수 있습니다. 

조작하기 위해서는 해쉬 값이 필요하기 때문에 해쉬 값을 복사합니다. 

이때, 시간을 변경하고자 하는 커밋의 이전 커밋의 해쉬값을 복사해야 합니다. 

예를 들어 C005_for을 조작하고 싶다면 535a1e22e456c1fb415e8a21092abc832f256e33를 복사해야겠죠.

(해쉬는 git이 commit한 순서를 알려주는 id로 저장하는 hash 값입니다.)

(해쉬 값은 e24c2fbe08ccfb3f236483317629f95f6d3dd59d 이런 것을 뜻합니다.)

 

git rebase -i 해쉬 값

앞에서 복사한 해쉬 값으로 파일을 열어 조작을 할 것입니다. 

git rebase -i 해쉬 값

마찬가지의 예로 C005_for을 조작하고 싶다면, 

git rebase -i 535a1e22e456c1fb415e8a21092abc832f256e33

명령어를 사용하여 파일을 엽니다.  

git rebase -i 535a1e22e456c1fb415e8a21092abc832f256e33

여기서 pick을 edit으로 수정한 후에 저장하고 닫습니다. 

 

git commit --amend --no-edit --date="수정하는 날짜"

이제 커밋을 변경하여 시간을 바꾸어보죠.

저는 2023년 8월 24일 4시 45분 45초로 바꾸고 싶습니다. 

git commit --amend --no-edit --date="August 24 04:45:45 2023 +0000"

명령어를 사용하여 수정을 할 수 있습니다. 

 

git rebase --continue

앞의 변경한 내용을 저장을 해야겠죠.

git rebase --continue

 

git push -f origin master

변경한 내용을 강제로 push해야 합니다. 

git push -f origin master

이렇게 하면 끝납니다. 

 

 

환경오염 예방에 일조하시길 바랍니다. 

LIST

'System > Git' 카테고리의 다른 글

diff 사용하기  (0) 2023.10.07
git log명령어, 커밋 히스토리 조회  (2) 2023.10.05
git ls-files 명령어  (0) 2023.10.04
git push 에러 The requested URL returned error: 403  (0) 2023.09.29
Git 시작하기  (0) 2023.09.27