DolphaGo / TIL

TIL & issues
0 stars 1 forks source link

잘못 설정한 이메일로 Repository에 커밋한 경우 #80

Open DolphaGo opened 2 years ago

DolphaGo commented 2 years ago

우선 잘못 커밋한 Repository로 가서 다음 명령어를 입력해주자.

git filter-branch --env-filter ' 
WRONG_EMAIL="잘못된이메일주소@wrong.com" 
NEW_NAME="새로운 이름" 
NEW_EMAIL="새로운이메일주소@right.com" 
if [ "$GIT_COMMITTER_EMAIL" = "$WRONG_EMAIL" ]
then 
    export GIT_COMMITTER_NAME="$NEW_NAME" 
    export GIT_COMMITTER_EMAIL="$NEW_EMAIL" 
fi

if [ "$GIT_AUTHOR_EMAIL" = "$WRONG_EMAIL" ] 
then 
    export GIT_AUTHOR_NAME="$NEW_NAME" 
    export GIT_AUTHOR_EMAIL="$NEW_EMAIL" 
fi 
' --tag-name-filter cat -- --branches --tags

그리고 git push --force origin <branch>를 해주면 커밋이 원래 의도한 이메일로 커밋되는 것을 확인할 수 있다.

DolphaGo commented 2 years ago

git filter-branch --env-filter ' WRONG_EMAIL="adamdoha@linecorp.com" NEW_NAME="DolphaGo" NEW_EMAIL="adamdoha@naver.com" if [ "$GIT_COMMITTER_EMAIL" = "$WRONG_EMAIL" ] then export GIT_COMMITTER_NAME="$NEW_NAME" export GIT_COMMITTER_EMAIL="$NEW_EMAIL" fi

if [ "$GIT_AUTHOR_EMAIL" = "$WRONG_EMAIL" ] then export GIT_AUTHOR_NAME="$NEW_NAME" export GIT_AUTHOR_EMAIL="$NEW_EMAIL" fi ' --tag-name-filter cat -- --branches --tags