私は Visual Studio Code を使い始めました。そして、私のテストプロジェクトを GitHubに保存しようとしていました しかし、 Visual Studioのコード はいつも私の GitHub を要求しています。 ) 資格情報。
私は私のPCにインストールしました GitHubデスクトップ そしてまた Git 、私はすでに走った:
git config --global credential.helper wincred
それでも Visual Studio Code が資格情報を要求しています。
何か手助け?
ユーザープロファイルのフォルダにあるmy。gitconfigファイルは次のとおりです。
[filter "lfs"]
clean = git-lfs clean %f
smudge = git-lfs smudge %f
required = true
[user]
name = ddieppa
[user]
email = [email protected]
[credential]
helper = wincred
これは、資格情報を要求するポップアップウィンドウです。
ポップアップに自分の GitHub 資格情報を入力しましたが、それでもGit出力ウィンドウにこのエラーが表示されます。 Visual Studioコード :
remote: Anonymous access to ddieppa/LineOfBizApp.git denied.
fatal: Authentication failed for 'https://github.com/ddieppa/LineOfBizApp.git/'
98回の投票の後、説明付きで真の答えを出す必要があると思います。
なぜVSコードはパスワードを尋ねますか? VSCodeは自動取得機能を実行しますが、gitサーバーはあなたの身元を認証するための情報を持っていません。次の場合に起こります。
https
リモートURLがあります。はい!この種のリモコンは絶対に毎回あなたに尋ねます。ここも例外ではありません。下記の解決策として承認をキャッシュするために一時的なトリックをすることができますが、お勧めできません。ssl
リモートURLがあります、しかしあなたはあなたのssh公開鍵をgitサーバにコピーしていません。キーを生成してgitサーバーにコピーするには、ssh-keygen
を使用します。完了しました。この解決策はまたあなたが再び端末上でパスワードを再入力しないのを助けます。答えは@Fnatical here のよい指示を見てください。この回答の最後にある更新された部分はまったく役に立ちません。それ以外の場合は、ワークフローが停滞します。それはVSCodeで起こっていることを止めるだけで、このことを端末で起こさせます。
この悪い答えが長い間あなたに影響を与えてきたのであれば申し訳ありません。
-
VSCodeドキュメント に解決策が見つかりました。
ヒント:VS CodeがGitリモートと通信するたびに認証情報の入力を求められないように、 認証情報ヘルパー を設定する必要があります。これを行わない場合は、[...]メニューで[自動フェッチを無効にする]を選択して、表示されるプロンプトの数を減らすことをお勧めします。
そのため、Gitがしばらくの間パスワードをメモリに保存するように、認証情報ヘルパーをオンにします。デフォルトでは、Gitは15分間あなたのパスワードをキャッシュします。
ターミナルで、次のように入力します。
git config --global credential.helper cache
# Set git to use the credential memory cache
デフォルトのパスワードキャッシュタイムアウトを変更するには、次のように入力します。
git config --global credential.helper 'cache --timeout=3600'
# Set the cache to timeout after 1 hour (setting is in seconds)
私はVS Codeとconfigを同じにインストールしましたが、@ ddieppaが言ったように、それは私にはうまくいきませんでした。だから私はユーザー設定でオプションを見つけようとしました、そして私は "git.autofetch" = trueを見ました。 VS Codeは、パスワードを繰り返し入力する必要がなくなりました。
メニューの[ファイル] - [設定] - [ユーザー設定]をクリックして、次のように入力します。
このファイルに設定を保存してデフォルト設定を上書きします。
{
"git.autofetch": false
}
あなたはこのようにあなたの資格情報を設定することができるはずです:
git remote set-url Origin https://<USERNAME>:<PASSWORD>@bitbucket.org/path/to/repo.git
あなたはこのようなリモートURLを得ることができます:
git config --get remote.Origin.url
「 Windows用Git認証情報マネージャ 」(および 認証情報マネージャを設定するための次の手順をインストールしてください )。
Gitを使用してアプリ内で必要な場合(VSコードなど)、「 魔法のように 」、Visual Studio Team Servicesの資格情報の入力に必要なダイアログが開きます。
私がしなければならなかったのは、このコマンドを実行することだけでした:
git config --global credential.helper wincred
それから私はパスワードを二度求められました。
次回はパスワードの入力を求めずに動作しました。
Http/httpsの代わりにsshを使用してください。
あなたはあなたのローカルマシンにsshキーをセットし、あなたのgitサーバにそれらをアップロードしそしてhttp://
にurlフォームをgit://
に置き換える必要があるでしょう、そしてあなたはもうパスワードを使う必要はないでしょう。
Sshを使うことができない場合は、これを設定に追加してください。
[credential "https://example.com"]
username = me
書類はこちら です 。
これらの手順に従うだけで、すぐにsshキーを設定できます。
新しいsshキーを生成します(または既にキーを持っている場合はこのステップを飛ばしてください)ssh-keygen -t rsa -C "your@email"
キーをhome/.ssh
ディレクトリ(またはWindowsの場合はUsers/<your user>.ssh
)に設定したら、それを開き、コンテンツをコピーします。
SSH keys
をクリックしてくださいAdd ssh key
をクリックしてくださいそして、あなたは全員行きます:-)
次の手順では、方法について説明します。
**パスフレーズなしでSSH鍵を生成することは、あなたの仕事が特に敏感であるならば賢明ではありません。
OS - Fedora 28 | エディタ - VSコードv1.23.0 | リポジトリ - Git
SSH鍵を生成します。
ssh-keygen -t rsa -C "[email protected]"
上記の手順を完了すると、公開鍵の場所がターミナルウィンドウに表示されます。現在ログインしているユーザーが「bob」の場合、あなたの公開鍵の場所は/ home/bob/.ssh/id_rsa.pubになります。
公開鍵をGitHubにコピーしてインポートします。
cat /home/bob/.ssh/id_rsa.pub
端末ウィンドウに表示されている公開鍵全体をクリップボードにコピーします。
上記の手順を確認してください。
ssh -T [email protected]
yes
こんにちは!あなたは認証に成功しましたが、GitHubはシェルアクセスを提供しません。
最初のコミット/ユーザー名/パスワードを入力せずにプッシュする: - touch test.txt
git add test.txt
git commit
- エディタを開き、メッセージを入力してファイルを保存します。 viがエディターの場合は、ファイルが開いたらi
を押してメッセージを入力し、escを押してから:x
を入力して変更を保存します。
git Push
GitHubにSSHで接続しようとしたときに遭遇する可能性がある唯一の問題はありません。このリンクはいくつかの援助を提供します -
ハッピーハンティング!
それに続く 記事 :
GIT_SSH envを設定するだけです。 VAR。 PuTTYのplink.exeプログラムへ。 (その後、認証エージェントとしてpageant.exeを使用します)
Windows 10の場合:コントロールパネル/資格情報マネージャー/ Windows資格情報に移動します-> gitリンクをクリックし、->編集->新しいパスワードに更新します。うまくいくはず
しばらくの間このようなものと戦った後、私は特にGitHubとBitBucketの両方にまたがって複数のアカウントを持つとき、私は良い解決策を思いついたと思います。しかしVSCodeの場合、最終的にGit Bash端末から起動することになり、bashセッションから環境変数を継承し、どのssh-agentを調べるべきかがわかりました。
私はこれが古い投稿であることを認識していますが、私はまだ必要な情報を入手するための場所を1つ見つけるのに本当に苦労していました。さらに2017年以降、ssh-agentはリポジトリにアクセスしようとしたときにだけパスフレーズの入力を促すことができました。
誰かが興味を持っているなら、私はここに私の調査結果を置きます:
パスフレーズなしでSSHキーを使用してください。
たぶん、これは一部の人には明白です(私にとってはそうではありませんでした)。パスフレーズが絶対に必要な場合も問題は解決されませんが、これはMacでの私の状況ではかなりの妥協点でした。
私は簡単な方法で同様の問題を解決しました:
git pull Origin master
と入力します。 'Origin'をあなたのリモートネームに置き換えてください。それで全部です。私は問題を解決しました
私にとってはSSHキーを使ってリモートレポジトリを設定しましたが、私の会社のドメインポリシーによりHOMEDRIVE環境変数が自動的にネットワーク共有に設定されていたため、gitはそれらを見つけることができませんでした。 code .
を起動する前に自分のシェルでその環境変数を変更すると、VSCodeが正しい環境変数を継承し、git出力ウィンドウで接続エラーが発生しなくなりました。
今私はちょうどHOMEDRIVEが常にc:\users\marvhen
ディレクトリのデフォルトの場所である私のローカル.ssh
ディレクトリを指しているようにドメインポリシーを上書きする方法を考え出す必要があります。
以下の手順で問題を解決してください。
アンインストールされたソフトウェアVscodeとgitそして同じものを再インストールしました。 gitリポジトリのクローンのURLをsshからhttpsに変更しました。
私は次のステップを実行することによってこれを止めることができた。
cd "C:\Program Files\Git\mingw64\libexec\git-core"
、続いてgit-credential-manager.exe uninstall
をアンインストールします。git config --global credential.helper wincred
を使用する注:パスワードとしてパーソナルアクセストークンを使用していました。