ターミナルでgitユーザーを切り替える方法は?


46

コマンドラインからプロジェクトをリモートリポジトリにプッシュしようとしています。

私のローカルディレクトリ内から、私はヒット:

$ git push

そして、次のエラーを取得します。

remote:username1 / repo.gitへのアクセス許可がusername2に対して拒否されました。
致命的: ' https://github.com/username1/repo.git/ ' にアクセスできません:
要求されたURLがエラーを返しました:403

username1プッシュしたいリポジトリをホストしている私のgithubアカウントのユーザー名はどこにあり、username2このマシンで使用していた古いアカウントです。

Macbook AirでOS X Yosemite(v10.10.5)を使用しています。そして、私はsshの代わりにhttpsを使用したいと思います

username1リモートにプッシュできるように更新するにはどうすればよいですか?

編集:明確にするために、単にconfig userオブジェクトを編集することについては話していません。たとえば、

$ git config --global user.name "Billy Everyteen"
$ git config --global user.email "billyeveryteen@example.com"

認証とは関係ありません。私の質問は、リモートリポジトリに書き込むために必要なユーザー認証を扱っています。



ありがとう。しかし、それはユーザー名の設定のみを扱います。認証ではありません。言い換えれば、そのドキュメントは、コミットの信用を得る人の名前を関連付ける方法を示しています。しかし、実際にはユーザーがコミットをプッシュすることを許可していません。
モーザー

1
git-scm.com/docs/gitcredentialsに記載されているコマンドを使用して、ユーザーを変更できる場合があります。または、資格情報をクリアする場合は、この質問stackoverflow.com/questions/15381198/…をご覧ください
ジョン

これは問題を解決しません!
ミハイル・サラリ

ローカルgit設定を変更したくない場合はどうすればよいですか?
アルカディ

回答:


42

を使用して端末からユーザー名とメールを変更することに加えてgit config

$ git config --global user.name "Bob"
$ git config --global user.email "bob@example.com"

キーチェーンから認証情報を削除する必要があります。これは、キーチェーンにも証明書があることに気付くまで苦労しました。

キーチェーンアクセスを開き、[すべてのアイテム]をクリックしてを検索しgitます。次のようなアイテムを取得できます。

スクリーンショット

それらを削除します。ここでレポジトリをプッシュしてみてください。gitがユーザーのパスワードを書くように要求します。


1
Windowsユーザーはどうですか?
Aks ..

2
私は何をすべきか複数のアカウントを持っている
Amerrnath

私はwin7でも同じ問題を抱えています。私は解決策が何であるかわからない:(
フィドルフリーク

22

CLIユーザーの場合は、これを使用するだけです: git config credential.username 'Billy Everytee'


一時的に2FAを無効にする必要があります。
bbaassssiiee

10

Windowsユーザーの場合:
手順に従ってください:
コントロールパネル>>ユーザーアカウント>>資格情報マネージャー>> Windows資格情報>>汎用資格情報

git資格情報を削除します。
次回レポジトリをプッシュするときに、資格情報の入力を求められます。
詳細な説明のための回答リファレンス


ありがとうございました!それは私がWindowsで探していたものでした。
JCF

@JCFようこそ!私はそれが助けてくれてうれしいです!
シューハムチャドカル

6

git configをリストします。

git config --list

ユーザー名とメールをグローバルに変更する

git config --global user.name "Nanhe Kumar"
git config --global user.email "info@nanhekumar.com"

現在のリポジトリのユーザー名とメールを変更する

git config  user.name "Nanhe Kumar"
git config  user.email "info@nanhekumar.com"

ビットバケットを使用している場合は、リポジトリのURLを変更します。

nano .git/config

このファイルは次のようになります。 [core] repositoryformatversion = 0 fileMode = false bare = false logallrefupdates = true ignorecase = true precomposeunicode = true [remote "origin"] url = https://nanhe@bitbucket.org/nanhekumar/myproject.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master

[user]
        name = Nanhe Kumar
        email = info@nanhekumar.com

これは、グローバルおよびローカルリポジトリスコープを考慮した最も徹底的な回答です。
ヨルダンステファネリ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.