클라우드 이모저모/GitHub

[GitHub] 깃허브 레포지토리 잔디가 생기지 않는 경우

후니(Hoonie) 2023. 12. 17. 14:56

🧐 개요

이번 포스트는 GitHub Contribution 연동이 정상적으로 이루어지지 않을 때의 해결 방법을 소개합니다.

 

작업 내용이 코드로는 반영이 되었는데, Github Contribution으로 인정되지 않는 경우가 발생할 수 있습니다.

이런 현상은 주로 작업 환경을 이전하는 시기에, 입력한 Configuration 정보에 무언가 문제가 있기 때문에 발생합니다.

 

깃허브의 내용물을 살펴보면, 당일 수행한 커밋 작업들이 제대로 남아 있습니다.

GitHub 활동의 클라우드 연동과 관련된 인증 요소에 무언가 문제가 있는 것입니다.

 

🛠️ 해결 방법

새로운 컴퓨터에 Git Commit 작업을 처음 수행할 때, username과 password 정보를 입력하도록 안내합니다.

입력한 정보는 git config 정보에 보관되어 추후 클라우드 연동 파라미터로 사용됩니다.

이 시점에서 입력한 닉네임과 이메일이 클라우드 계정의 닉네임, 이메일과 일치해야만 정상적으로 활동 내역이 반영됩니다.

 

아래의 명령어를 통해 contribution용으로 등록한 이메일 및 유저명을 확인할 수 있습니다.

git config --global user.email
git config --global user.name

등록한 이메일 및 닉네임 정보는 다음의 명령어로 수정하실 수 있습니다.

git config --global user.email <이메일_주소>
git config --global user.name <유저명>

 

이렇게 다시 설정해 주면 GitHub에 문제 없이 반영이 됩니다.

 

🛠️ 사라진 잔디 다시 심기

사라진 잔디를 다시 심는 것은 코드로 직접 할 수도 있지만,

좋은 내용을 정리해주신 블로그가 있어 먼저 소개해드리고자 합니다.

 

https://coffeebaralog.tistory.com/5

 

[GIT] GitHub 잔디 누락 현상 및 해결 방법

문제 GitHub에 2023년 1월 2일 ~ 2023년 1월 5일까지 push 했음에도 잔디가 누락되는 현상 발생했습니다. 소중한 잔디를 다시 잃을 수 없기에 해결방법과 복구한 방법을 정리했습니다. 원인 저는 GitHub

coffeebaralog.tistory.com

해당 게시글에 좋은 내용들이 많아 읽고 오시는 것을 추천드립니다!

아래의 코드에서 이메일 정보와 유저명을 입력해 실행하면 없어졌던 잔디들을 복구할 수 있습니다.

 

git filter-branch --env-filter '
WRONG_EMAIL="<수정 전 email>"
NEW_NAME="<유저명>"
NEW_EMAIL="<수정 후 email>"
 
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

해당 코드를 실행하니 비어 있던 잔디들이 다시 원래대로 돌아왔습니다!

 

+ 그래도 안 된다면?

아이디, 이메일 정보 외에 GitHub 레포지토리 이름 정보도 각 레포의 config에 정확하게 기재되어 있어야 합니다.

보통은 git clone 명령어를 수행할 때 자동으로 기입된 채로 입력되지만,

만일 수작업 도중에 오탈자가 발생하였다면 이를 같이 수정해주시면 됩니다.