0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

git configで参照しているユーザがコミットしているのにpush時のみ別ユーザになる時は~/.netrcを消せ

Posted at

結論: ~/.netrcにGitHubなどの認証情報が置いてあったりするからそこを消せ

きっかけ

  • 会社用アカウントと個人アカウントをディレクトリ別でgitconfigを分けて読み込んでいた
  • 会社用アカウントしかしばらく使ってなかった
  • 久しぶりに個人アカウントでpushしようとしたら、コミット時は個人アカウントが反映されるのにpush時は会社用アカウントが参照されてしまう

これで2日ぐらい無駄にしました。

やったこと

pushするときにユーザ指定

エラーが発生した、そしてそもそもpushするたびにやってたらキリがないのでやめた

gitconfigの参照ユーザを全部個人アカウントに変える

gitconfigに会社用アカウントが一切ないのになぜか会社用アカウントが参照される

gitconfigのcredential.helperを消す

効果なし、push時に会社用アカウントが参照される

usr/local/etc配下のgitconfigとgitconfig.defaultで関係ある内容を消す

絶対これだと思ったのに意味無し、push時に会社用アカウントが参照される

キーチェーンアクセスからGitHubの認証情報を消す

意味なし、push時に会社用アカウントが参照される
でもパスワード認証が廃止されてるから情報が古かったら消してたほうが良い

答え: ~/.netrcの認証情報を消す

なんか過去の自分が入力をサボるために多分置いたんであろうファイルが悪さをしていた、最悪
とりあえず2ユーザ分ける場合はnetrcを使うのはあんまり良くなさそうです。

  1 machine github.com
  2   login github-username
  3   password hashhashhashhash

git pushしてみる

❯ git push
Username for 'https://github.com':

これで正しくユーザ名が求められました。ありがとうございました。
この記事を見てくださっている方はあとはもう自分でどうにか出来ると思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?