Git

[Git] Android Studio 이미 커밋한 내역의 작성자 바꾸기.

Charlie_moon 2022. 5. 20. 14:25

 

 

 

회사에서 업무중 새로 지급 받은 기기에서 무심코 커밋과 푸시를 날려버렸다...

 

그 결과....

 

 

 

 

 

작성자를 알 수 없는 나의 멋진 응가가 되었다...

 

 

어? 어! 으어!!!~ 어뜩해ㅠ 어뜩해ㅠ

 

여기저기 구글에서 뒤져보니 잘 작성되어있는 블로그 글이 있엇다.

 

바꾸는 방법 시작!

 

 

 

 

 

1. 바꾸려는 커밋 직전의 커밋으로 Rebase 하기

터미널을 이용해서

아래 명령어로 수정해야하는 커밋의 직전커밋으로 Rebase 하자

git rebase -i <커밋 해시>

-i 는 --interactive 로  대화형으로 진행을 하겠다는 옵션이다.

 

 

 

2.바꿔야하는 커밋을 pick 에서 edit로 바꿔주자

 의 명령어를 사용하면 커맨드창에 커밋들을 볼 수 있다.

라인 앞쪽에 pick글자를 edit으로 변경해주자.

 

-수정방법-

1. 키보드 i 키를 눌러주어 터미널 하단에 -INSERT-(수정모드) 글자가 보이게한다.

2. 방향키로 커서를 움직여 문자를 수정해준다.

3. 수정이 완료 되었다면 ESC를 눌러 -INSERT-(수정모드) 글자가 사라지게한 다음 :(콜론) 를 입력해주고 wq(저장 후 종료)를

입력해준 다음 엔터를 눌러준다.

(터미널창 사용방법이 궁금하다면 'git bash 사용법','vim 사용법' 을 검색해보길 바란다.)

 

 

 

3.작성자를 변경해주자 

의 과정을 거치면 터미널창에 아래의 화면이 나올 것이다. (커밋해쉬 및 해당커밋의 내용)

git commit --amend --author = "작성자 이름 <이메일>"

이 상태에서  위 코드를 입력해주면 해당 커밋을 수정하도록 하는데 나는 작업내용이 바뀌는것이 아니라 작성자만 바꾸면 되기 때문에 그대로 :wq(저장 후 종료) 를 이용하여 빠져나온다.

 

git rebase --continue

이후 위의 코드를 이용하여 다음 커밋을 ⓷ 의 과정으로 계속 수정해준다.

 

 

 

4.수정을 마쳤다면 수정된 내용을 다시 Git에 Push해 주자

⓶와 ⓷의 과정을 반복하다 보면 아래의 메시지가 나타난다.

커밋이 수정되어 Rebase가 되었다.

이제 수정된 것을 Git에 푸시 해주면 끝이다!

 

 

자~ 를!
이제 다 바뀌었다맨이야~!

 

뽕~!

 

 

다음에는 정신차리고 커밋을 해야겠다...

 

 

 

 

 

참고 사이트 

https://sangminlog.tistory.com/entry/modify-author

 

[Git] 이미 커밋한 내용의 계정 변경하기

gitlab과 github 계정을 따로 쓰는 바람에 gitlab에 커밋한 내용을 미러링해서 깃허브로 가져와도 contribution 반영이 되지 않았다. 찾아보니 rebase 를 이용하면 문제를 해결할 수 있다고 한다. 상황 소스

sangminlog.tistory.com

https://devvkkid.tistory.com/138

 

[Git] 어라? Author가 내가 쓰던게 아니네? 오마이잔디...

요즘 알고리즘 공부가 한참이다. 덕분에 간간히 Github에 잔디를 심고 있었는데... 이게 무슨 일인가? 최근 3주가 황무지가 아닌가? git log를 확인해보니... e9b8d8f - barley, 2일 전 : 학습중 : 15652 db8a179.

devvkkid.tistory.com

https://blog.outsider.ne.kr/1038

 

git rebase 할 때 merge 커밋 유지하기 :: Outsider's Dev Story

난 소스 형상관리를 할 때 커밋메시지나 커밋 히스토리같은 부분에 신경을 많이 쓰는 편이라 자연히 `rebase`를 많이 사용하는데 rebase를 하면 머지(merge) 커밋(

blog.outsider.ne.kr