web-dev-qa-db-ja.com

SourceTreeはGithubパスワードを要求し続けます

私の組織は、プロジェクト管理のためにBitbucketからGithubに切り替えています。今日、SourceTreeを使用して、最新のプロジェクトをBitbucketからGithubに転送しようとしていました。プロジェクトに2番目のリモートリポジトリを追加し(Githubの宛先リポジトリのURLを使用)、すべてを最新の状態にしてから、コードをリポジトリにプッシュしようとしました。私のGithubアカウントのパスワードを尋ねるボックスがポップアップしました。 (正しい)パスワードを入力し、[OK]をクリックすると、ダイアログボックスが再びポップアップしました。パスワードを(正しく)もう一度入力すると、同じことが行われました。

ユーザー名が正しく識別され、パスワードが正しい。以前のバージョンの問題だと聞いたため、SourceTreeを更新しようとしました。問題は解決しません。

SourceTree 2.3.1を使用しています

25
Abigail Fox

GitHubで2要素認証を使用している場合、 個人アクセストークンを作成し、SourceTreeで使用 する必要があります。

SourceTreeでGitHubの2要素認証を使用するには、パスワードの代わりにアクセストークンを使用するだけです。これを行う手順は次のとおりです。

  1. GitHubのPersonal Access Tokens設定に移動します。
  2. 新しいトークンを生成するボタンをクリックします。
  3. トークンにわかりやすい名前を付けます。
  4. このトークンを付与するスコープを選択します。
  5. Generate tokenボタンをクリックします。
  6. トークンをコピーし、ホストされているリポジトリでパスワードとして使用します。

これについての詳細は GitHubのヘルプ で見つけることができます。

Macユーザー:SourceTreeがパスワードを要求し続ける場合は、ターミナルに移動してこれを入力します:

git config --global credential.helper osxkeychain
35
Chris

ターミナルを開き、リポジトリをクローンします。リポジトリのURLには、使用済みIDが必要です。例:

$ git clone https://<username>@github.com/<userId>/<reponame>.git
$ git clone https://[email protected]/mak123/<reponame>.git

次に、クローンされたフォルダをsourceTreeウィンドウにドラッグアンドドロップします。「+新しいリポジトリ」ボタンをクリックし、メニューから「既存のローカルリポジトリを追加」を選択して行うこともできます。もう一度パスワードを要求される場合がありますが、今回はキーチェーンに追加されます。

3

更新後も似たようなことがありました。私はビットバケツの資格情報を再度追加し、プロトコルを変更するなど、運が悪かったまで...

  1. キーチェーンを開き、パスワードカテゴリでbitbucket(おそらくgithubでも同じ、代わりにgithubを検索)を検索しました。

  2. ユーザーのアクセスキーが複数あることがわかったため、リポジトリを閉じ、「アプリケーションパスワード」の種類のすべてのキーを削除し、SourceTreeの設定>アカウント>アカウントを削除して、再度追加しました(通常のログイン-I HTTPSでBasicを使用)。

  3. キーチェーンはパスワードを保存する許可を求めますが、これを「はい」と言い、今では「アプリケーションパスワード」という種類のキーが1つだけ表示されています。

リポジトリブラウザからリポジトリを開いたところ、パスワードのポップアップが表示されなくなりました。

これは一週間私を悩ませました!これがあなたを助けたなら、あなたは今私と少しダンスをすることができます:)

2
AEQ

SourceTreeバージョン2.4.8.0

私にとっての問題は、SourceTreeとGitHubの間のセットアップの順序のようです。最初にSourceTreeをセットアップし、すべての「後でセットアップ」オプションをクリックしました。

簡単な修正-SourceTreeをアンインストールして再インストールします。非自明なビットは、実際のプログラムファイルを手動で削除する必要がありました。

「SourceTree.exe」ショートカットから、ファイルの場所を開きます。 「C:\ Users\myusername\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Atlassian」で分岐した場所で、ショートカットは別のショートカットを指していました。

そのショートカットのファイルの場所を開きます。最終的には「C:\ Users\myusername\AppData\Local\SourceTree」になりました。 「SourceTree」フォルダー全体を削除します。 「...\Local」まで1レベル上に移動し、「Atlassian」フォルダーも削除します。

SourceTreeをアンインストールします。 GitHubが希望どおりにセットアップされていることを確認してください(私にとっては、SourceTreeのセットアップに使用したSSHキーも作成して保存しました)。すべての正しい資格情報を使用してSourceTreeを再インストールし、適切なリポジトリなどをポイントします。

このすべての後、SourceTreeは2つの異なるダイアログボックスを使用してGitHub資格情報を2回要求し、その後停止して動作しました!これ以上の無限ループはありません。がんばろう!

1
Josh

GitHubで個人用アクセストークンを設定し、上記のA_01の状態を実行することに加えて、これは役立つ場合があります(最終的に機能するようになりました)

  • Sourcetreeの最新バージョンがあることを確認しました
  • System Gitの最新バージョンにアップグレードして使用しました([ツール]-> [オプション]-> [Git])
  • Windows用の最新のGit Credential Managerにアップグレードされました(これは、ダウンロードしてダブルクリックしたインストーラーを介して行われたため、非常に簡単でした)
  • [ツール]-> [オプション]-> [認証]に保存されているGitHubアカウントにOAuthを使用していることを確認しました
  • [ツール]-> [オプション]-> [Git]で[SourcetreeがGit Credential Managerを使用して資格情報を管理することを許可する]チェックボックスをオフにしていることを確認しました。
  • 次に、GitHubダイアログをトリガーしたとき(新しいブランチをプッシュする、ほんの一例)、そこにログインしました(これが失敗する場所でした)。
  • 次に2要素認証ダイアログが表示され、コードが期待どおりに電話に送信されました。電話からこのダイアログにコードを入力することができました。
1
bcr

ソースからコピーされたAndrew Magillによって与えられた解決策が私のために働いた: link

問題は、SourceTreeの組み込みGitクライアントにgit-credential-manager v1.12が付属していることです。これは、サイトでTLS 1.1を無効にしているため、Githubで動作しなくなりました。 git-credential-manager v1.14を取得する必要があります。これを行う最も簡単な方法は、Gitクライアントの現在のコピーを個別にインストールし、組み込みクライアントの代わりにSourceTreeを切り替えて使用することです(「システムgit」)。または、組み込みクライアントのgit-credential-managerのファイルをMicrosoftの最新バージョンに置き換えることにより、git-credential-managerを更新できます。

1
A_01

これは私が発見したものです(私のドライブCで「sourcetree」を検索した後):

  1. SourceTreeをアンインストールします
  2. フォルダーC:\ Users [ユーザー名]\AppData\Local\Atlassian\SourceTreeを削除します
  3. フォルダーC:\ Users [username]\AppData\Local\SourceTreeを削除します
  4. SourceTreeを再インストールします
0
Jboy Flaga

「ユーザー名とパスワード」認証を使用している場合、認証にSSHキーを使用するように変更することができます。

毎回GitLabにコミットすると、このような状況に遭遇しました。認証方法を変更したとき:SSHキー、問題は解決しました。

0
ifeegoo

私の場合、メインプロジェクトがsshを使用していても、これはhttpsにデフォルト設定されていたサブモジュールで発生していました。 SourceTreeのリポジトリ設定でサブモジュールのリポジトリパスを変更して、httpsではなくsshパスを使用することで修正しました。

0
Swindler

SSHキーを使用していますが、SourceTreeは毎回パスワードを要求してきました。

アトラシアンのコミュニティで発見された、このソリューションは私のために働いた:

  1. ターミナルを開き、プロジェクトディレクトリに移動します
  2. タイプgit config credential.helper store
  3. タイプgit pull
  4. ユーザー名/パスワードを入力します(尋ねられた場合)

ほら!

0
Marc

GitHub 2FA を使用していない場合、パスワードを尋ねるもう1つの理由は次のとおりです。

GitHubリポジトリのURLはsshのものであり、httpsのものではありません。
gitはsshキーを見つけられない(または、sshキーがGitHubアカウントに登録されていない)ため、アカウント/パスワードメカニズムにフェールバックします。

2FA(およびhttps URL)を使用している場合、 パスワードとして個人トークンが必要

0
VonC