私は現在HTTPS経由でGitHubを使用しており、最新バージョンのGit(1.9.0)とWindows 7のGit認証ヘルパーをインストールしています。
私の環境をセットアップする際に、ユーザー名とパスワードを永久に記憶するようにgit-credentialsに指示しました。
最近、ウェブサイトでGitHubパスワードを更新しましたが、プッシュ、プル、フェッチなどができなくなりました。
Windows 7のgit-credentialsヘルパーでパスワードを更新するにはどうすればよいですか?
私は現在HTTPS経由でGitHubを使用しており、最新バージョンのGit(1.9.0)とWindows 7のGit認証ヘルパーをインストールしています。
私の環境をセットアップする際に、ユーザー名とパスワードを永久に記憶するようにgit-credentialsに指示しました。
最近、ウェブサイトでGitHubパスワードを更新しましたが、プッシュ、プル、フェッチなどができなくなりました。
Windows 7のgit-credentialsヘルパーでパスワードを更新するにはどうすればよいですか?
回答:
これらの答えはどれも、私のGitクレデンシャルの問題で機能しませんでした。だれかがそれを必要とした場合、何が機能したかを以下に示します(私はWindows 8.1でGit 1.9を使用しています)。
資格情報を更新するには、[コントロールパネル] → [ 資格情報マネージャー] →[ 汎用資格情報]に移動します。Gitアカウントに関連する認証情報を見つけ、更新して、更新されたパスワードを使用します。
Git用のWindows資格情報マネージャーを使用するには、資格情報ヘルパーを次のように構成する必要があることに注意してください。
git config --global credential.helper wincred
異なるリポジトリに使用する複数のGitHubアカウントがある場合は、(デフォルトのドメインだけでなく)完全なリポジトリパスを使用するように認証情報を設定する必要があります。
git config --global credential.useHttpPath true
git config --listが含まれてcredential.helper=wincredいる場合、これは受け入れられる答えになります 。
ADDGeneric Credentialgit:http://yourserver:port/git:
パスワードを変更した後で最初にGitをフェッチしようとしたときに、ユーザー名とパスワードの組み合わせが無効であると言われました。git-credentialヘルパーが私の古い値をキャッシュしていたので、これは正しかったです。
しかし、ターミナル/コマンドプロンプトを再起動した後、別のgit fetchを試みましたが、今回は資格情報ヘルパーがGitHubのユーザー名とパスワードの入力を求めてきました。
端末/コマンドプロンプトの再起動と組み合わせて、最初の失敗したGitフェッチリクエストがこれを解決したと思います。
この答えが将来同じような立場にいる他の人に役立つことを願っています!
git fetchでなく、2回目にも機能するように見えgit cloneます。
Windows、Linux、MacOSのコマンドラインを使用したソリューション
GitHubサーバーでGitHubパスワードを更新した場合、git fetch/pull/pushコマンドの最初の試行で認証失敗メッセージが生成されます。
同じgit fetch/pull/pushコマンドをもう一度実行すると、資格情報(ユーザー名とパスワード)の入力を求められます。GitHubサーバーのユーザー名と新しい更新パスワードを入力すると、ログインが成功します。
私もこの問題を抱えていて、上記の手順を実行して完了しました!!
Windowsユーザーの場合、資格情報マネージャーで資格情報を削除または更新できます。
Windows 10では、次のパスに移動します。
コントロールパネル → すべてのコントロールパネル項目 → 資格情報マネージャー
または、[スタート]メニューの[ウィンドウの検索]セクションで「資格情報マネージャー」を検索します。
次に、資格情報マネージャーから、「Windows資格情報」を選択します。
Credential Managerは、「Generic credentials」の下にOutlookやGitHubリポジトリを含む多くの項目を表示します
Gitの右側にあるドロップダウン矢印をクリックすると、編集と削除のオプションが表示されます。削除すると、次回フェッチまたはプルしたときに資格情報ポップアップが表示されます。または、そこで資格情報を直接編集できます。
control.exeこのコントロールを表示するには、手動で実行する必要があります。
まず、Gitコマンドで使用しているバージョンを見つけますgit --version。1.7.10より新しいバージョンを使用している場合は、次のコマンドを使用します。
git config --global credential.helper wincred
次にを実行git fetchすると、パスワードの更新を求められます。
これで、Gitで何度もパスワードの入力を求められなくなります。
--global?影響を受けるリポジトリだけでなく、すべてのリポジトリについて再度尋ねられるリスクはありませんか?
ここでの答えは時代遅れのようです。私にとってWindows 10とGit 2.15.0の場合、これでうまくいきました:
git credential reject
protocol=https
host=github.com
<Empty line here>
次に、新しいユーザー名とパスワードを設定します。
git credential fill
protocol=https
host=github.com
<empty line here>
この後、クレデンシャルが目的のターゲットホストで機能するgit credential approveようになった場合は、Gitクレデンシャルの一般的な使用(ステップ4)で述べたように、クレデンシャルヘルパーにクレデンシャルを承認済みとしてマークし、将来の接続で再利用するように指示する必要があります。
git credential fill部分をそのまま実行すると、古い間違ったパスワードが自動的に生成されました。このコマンドを使用するには、新しいコマンドを手動で設定する必要がありました。とにかく、ありがとう、この答えは私にこの問題を助けてくれました!
fill、使ってみapproveませんか?
git credential rejectは決して完了しません
FWIW、私はこの非常に同じ問題に遭遇しました(そして私の上司もそうだったので、さらに激しくなりました)。
インスタントソリューションは、Windows Credential ManagerでGitエントリを削除または修正することです。ローカライズされたWindowsバージョンでそれを見つけるのは難しいかもしれませんが、幸運にも、古き良きWindows+ R実行ダイアログから、control keymgr.dllまたはcontrol /name Microsoft.CredentialManager(またはrundll32.exe keymgr.dll, KRShowKeyMgrクラシックな外観を好む場合)から開始できます。または、これを同僚のバッチファイルに入れますcmdkey /delete:git:http://your.git.server.company.com。
MicrosoftのGit Credential Managerでは、これは既知の問題であり、2019年の初めに修正される可能性があります(したがって、息を止めないでください)。
cmdkey /delete:git:https://your.git.server.company.com
delpw = !cmdkey /delete:git:$(git remote get-url $1)。使用法:git delpw origin(ps:/ delはここでは機能しませんでした
ただ、cdあなたはgitの-資格-winstoreをインストールしたディレクトリにあります。どこにあるかわからない場合は、Git Bashで実行してください。
cat ~/.gitconfig
次のように表示されます。
[credential]
helper = !'C:\\ProgramFile\\GitCredStore\\git-credential-winstore.exe'
この場合、リポジトリはC:\ ProgramFile \ GitCredStoreです。Git BashまたはWindowsコマンドを使用してこのフォルダーに移動したら、次のように入力します。
git-credential-winstore.exe erase
host=github.com
protocol=https
をEnter2回押すことを忘れないでくださいprotocol=https。
現在のソリューションはいずれも、git bash 2.26.2では機能しませんでした。 これは、Windows資格情報マネージャーを使用している場合はどのような場合でも機能するはずです。
1つの問題は、ログインしたユーザーに対してWindows資格情報マネージャーが実行されることです。例えば私の場合、右クリックでgit bashを実行し、管理者として実行します。したがって、保存された資格情報は資格情報マネージャーにあり、管理者としてWindowsにログインしないと、Windows GUIでアクセスできません。
これを修正するには:
cmdkey /listます。ここに古い認証情報が表示され、... target:xxx ...cmdkey /delete:xxx、ここでxxxは前の行のターゲットです資格情報が削除されたことを確認する必要があります。次にgit bashで認証を必要とする操作を行うと、ポップアップに資格情報が要求されます。