공용 컴퓨터에서 Git을 사용하려다가 기본적으로 저장된 Github계정이 다른 사람의 계정일 때, 커밋이 그 사람 명의로 되어버리는 현상이 발생합니다.
이때, 해당 Repository 로 이동하여 다음 명령어를 입력하면 됩니다. USERNAME 을 Github 아이디(대소문자 구별) 로 바꾸고, EMAIL 을 Github 계정에 연결된 이메일로 바꾸면 됩니다.
$ git config --local user.name "USERNAME"
$ git config --local user.email "EMAIL"
이렇게 하면 이 Repository 에서만 본인 명의로 커밋이 됩니다.
그런데 여기서 push를 하려고 하면 이렇게 오류가 뜹니다.
remote: Permission to Tekiter/Algorithm.git denied to ________.
fatal: unable to access 'https://github.com/Tekiter/Algorithm/': The requested URL returned error: 403
이는 해당 컴퓨터에 로그인된 Github 계정은 위의 커밋 정보와는 따로 저장되는데, 이 계정은 당연히 내 Repository에 push 권한이 없기 때문입니다.
해당 Repository에서 다음 명령을 또 입력하면 됩니다. 역시 USERNAME 을 Github 아이디(대소문자 구별) 로 바꾸고, REPONAME 을 해당 Repository 이름으로 바꿔서 입력하면 됩니다.
$ git config --local credential.useHttpPath true
$ git remote set-url origin https://USERNAME@github.com/USERNAME/REPONAME.git
push를 해보면 Github 로그인 창이 뜨고, 로그인하면 이후 해당 Repository 에서만 지정한 계정으로 push 됩니다.