Git

[Android Studio / Git] commit author 수정하기

실버☆ 2022. 3. 16. 19:28

 

나중에 잊어버릴까봐 또 헤매지 말라고 써두는 글.

 

열심히 코드를 작성해서 github에 push를 했는데, commit 작성자명 이름이 내 닉네임이 아닐 때가 있다.

뚜둔.... 이대로라면 내 깃헙 풀밭에 공백을 남기게 됨...

 

 

 

분명 안드로이드 스튜디오에서 내 깃허브 아이디로 로그인했는데 뭐가 문제일까. 우선 로컬 저장소를 다시 살펴볼 필요가 있다. 깃허브 사이트에 보여지는 커밋 작성자는 Git에 설정된 이메일을 통해 사용자를 찾는 방식으로 푸시가 된 결과이기 때문

 

 

 

Git에 접근하기 위해, 안드로이드 스튜디오 하단 Terminal을 열어준다.

이제 여기서 git 명령어들을 사용해 줄건데, 만약 이상한 오류 문구가 뜨며 명령어가 실행되지 않는다면

git 환경변수를 설정해 주면 된다.

 

 

시스템 환경변수 편집 > 환경변수 > 시스템변수 > path > 새로 만들기

C:\Program Files\Git\cmd\

C:\Program Files\Git\bin\ 이 두 경로를 추가

 

 

 

1) Commit만 했을 경우

 

이제 터미널에 아래 명령어를 써준다

git commit --amend --author="사용자명 <이메일>"

 

위와 같은 방법으로 수정 완료 후 다시 push를 해보면 내 이름으로 정상적으로 커밋이 된 걸 확인할 수 있음~~

 

 

2) 이미 Push를 했을 경우

 

만약 이미 푸시가 된 상태에서 커밋 메시지나 작성자명을 변경해야 한다면,

이때도 터미널에서 해당 커밋을 찾아 수정 가능하다.

 

먼저 변경하려는 커밋의 이전 커밋 hash값을 찾아준다.

hash값은 'git log'명령어를 사용하여 최근 커밋 정보를 조회하면 알 수 있다.

 

git rebase -i ${해시값}

 

위와 같이 rebase 명령어를 입력. 만약 해시값이 1234라면 git rebase -i 1234 라고 입력해준다.

이때 해시값은 변경하려는 커밋의 직전 커밋 해시값!! 임을 꼭 주의할 것

 

위와 같은 명령어를 입력하면 vi 에디터가 열리게 된다. 첫줄에 초기형태인 'pick {해시값} {커밋내용}'으로 뜨는 것이 보이는데 pick을 e 또는 edit으로 변경! 이후 :wq(저장하고 종료)를 눌러 에디터 창을 닫으면 된다.

 

 

저장 후 아래 명령어를 입력하여 작성자를 수정해줄 수 있다.

성공적으로 수정이 완료된 것을 확인하고 rebase를 종료하면 끄읏

git commit --amend --author="사용자명 <이메일>"
git rebase --continue