2010-10-14 17:17:28 +0000 2010-10-14 17:17:28 +0000
174
174

どうすればGitにGitHubのユーザー名とパスワードを聞かれないようにできますか?

GitHubでレポを作っているのですが、何かをプッシュしようとするたびにGitHubのユーザー名とパスワードを聞かれます。

(https://help.github.com/articles/setting-your-email-in-git) [ setting your email in Git ] &003の指示、つまりGit変数github.userとgithub.tokenを設定してみましたが、何も変わりませんでした。

回答 (12)

215
215
215
2011-08-08 22:36:29 +0000

今日も同じような問題がありました。私の作業コピーをめちゃくちゃにしてしまったので、ディレクトリをリネームしてgithubからプロジェクトを再度クローンすることにしました。しかし、それをした後、Pull/Pushリクエストをするためにパスワードを入力しなければならないのですが、これまでのように一度だけパスフレーズを入力するのではなく、パスワードを入力しなければなりませんでした。

git config -l

を実行して、'remote.origin.url'で始まる行を見てください。

プロトコルを切り替えるには:

git config remote.origin.url git@github.com:the_repository_username/your_project.git

the_repository_usernameyour_project は適切なリポジトリ名とそのリポジトリの所有者に置き換える必要があります。ユーザー名は、リポジトリを所有している場合はあなたのもの、そうでない場合はリポジトリの所有者のユーザー名になります。

34
34
34
2010-10-14 17:28:04 +0000

一度だけ認証する必要がある ssh-agent をセットアップする必要があります。ハウツーについては、SO の この回答 を参照してください。

31
31
31
2013-12-03 22:40:15 +0000

SSH の代わりに HTTPS を使用している場合は、次のようにすることができます:

  1. リモートURL(remote.origin.url)を

で探す 2. あなたのリモートURLは、このようになります。https://{USERNAME}@github.com/{USERNAME}/{REPONAME}.git

  1. このコマンドを実行します。
26
26
26
2014-11-21 04:27:04 +0000

HTTPS を使えば、以下のようにすれば、git が github のリモートでユーザー名を尋ねるのを防ぐことができます。私はこの設定を使って、仕事を始めるときに一度だけパスワードを入力するようにしています。

それが終わると、~/.gitconfig

git config --global url."https://yourusername@github.com".insteadOf "https://github.com"

Source: http://git-scm.com/docs/git-credential-cache http://git-scm.com/docs/git-config

6
6
6
2014-02-23 11:54:29 +0000

Windows で HTTPS を使用している場合は、 Git Credential Store を試してみてください - これは Windows Credential Store を使用して名前とパスワードを保持します。

6
6
6
2010-10-14 19:45:54 +0000

githubのssh鍵を設定する際に、デフォルトの鍵でない場合は、~/.ssh/config

Host *github.com
    User git
    IdentityFile ~/.ssh/github_id_rsa
```にセクションを追加する必要があります。
5
5
5
2013-08-11 03:17:37 +0000

また、毎回パスワードの入力を求められますが、ユーザ名ではなく、ユーザ名を入力するようにしたい場合は、ユーザ名を指定して HTTPS でリモートを設定します。このようにします。

git config remote.origin.url https://USERNAME@github.com/repo_owner/repo_name

この後、毎回パスワードを要求されますが、ユーザー名は要求されません。

これは、世界と共有する前に自分の github のパスワードを入力することを強制されるのが好きなので、私がそれを好む方法です。

2
2
2
2014-09-25 19:45:49 +0000

私のように2ファクタ認証を使っている場合は少し違います。

2 要素認証を使っている場合は、ユーザー名やパスワードを指定してもうまくいかないので、アクセスが拒否されてしまいます。しかし、アプリケーションのアクセストークンを使って git のクレデンシャルヘルパーにキャッシュしてもらうことができます。

どこで見たか覚えていませんが、ユーザー名を聞かれたときにアプリケーションのアクセストークンを入力します。その後、パスワードは空白のままにしておきます。私のMacでは動作しました。

2
2
2
2016-06-19 21:27:34 +0000

SSH を使う

プッシュ中に GitHub がパスワードを要求してくるのを防ぐために、理想的には HTTPS URL (git@github.com:...) の代わりに SSH (https://github.com/...) を使い、 SSH 鍵を GitHub アカウントに追加する を使います。を参照してください。どのリモートURLを使うべきか](https://help.github.com/articles/which-remote-url-should-i-use/)

a credential helper

その他、本当にHTTPSを使う必要がある場合は、 GitにGitHubのパスワードをキャッシュするのために、a credential helperを使って、GitがGitHubと通信するたびに、GitにGitHubのユーザー名とパスワードを覚えてもらうようにします。

  • Mac: git config --global credential.helper osxkeychain (osxkeychain helperが必要)、
  • Windows: git config --global credential.helper wincred
  • Linuxその他: git config --global credential.helper cache

.netrc

もう一つの方法は、~/.netrc (Windowsの場合は_netrc)でユーザー/パスワードをconfigureする方法です。 例:

machine github.com
login USERNAME
password PASSWORD

OAuth

変更をプッシュするために OAuth トークン パーソナル API トークン ) を使用します。関連: (https://stackoverflow.com/q/5343068/55075) - LinuxでGitHubのhttpsパスワードをターミナルキーホルダーに保存する方法は? - Windows版GitHubのようなGitクライアントを設定して、認証を求めないようにする

1
1
1
2016-06-05 12:21:50 +0000

ユーザー名を聞くのは面倒ですが、パスワードを聞くのはいいことです。

1
1
1
2016-04-05 14:31:43 +0000

また、Windows を使用している場合は、次のようにすることもできます:

$ git config --global credential.helper wincred

もう一度サインインするだけで、git が記憶してくれます。

0
0
0
2016-07-07 13:37:29 +0000

Windows の場合は Git Credential Manager for Windows を使用してください。

このプロジェクトにはが含まれています。Windows Credential Store でのセキュアなパスワード保存 - Visual Studio Team Services での多要素認証のサポート - GitHub での二要素認証のサポート - Visual Studio Team Services と GitHub での個人アクセス・トークンの生成と使用のサポート - Visual Studio Team Services と GitHub での個人アクセス・トークンの生成と使用のサポート - Windows の場合は、 Git Credential Manager for Windows を使用してください。Azure DirectoryでバックアップされたVisual Studio Team Servicesの非インタラクティブモードのサポート - Team Foundation ServerのKerberos認証 - ビルドエージェントの最適化のためのオプション設定

最新版をダウンロード とインストールするだけです。

使用方法

しないでください。それは、[ 魔法のように ]&003認証が必要なときに動作します。