Sourcetreeを使用して、bitbucketでhttpsプロトコルを介してプロジェクトをプッシュしようとしています。
ただし、ログイン名とパスワード(Webサイトで機能します)でbitbucketに接続できません。致命的なエラーが発生しました:「認証に失敗しました」。
Httpsの代わりにsshプロトコルを使用して問題を回避できる他の投稿を読んだので、 source tree faq の指示に従ってsshキーを設定しました。しかし、今では、コードをプッシュしたいときにsshプロトコルに変更する方法がわかりません。誰かが私がこれを行う方法を知っていますか?ありがとうございました。
GITコンソールで認証の問題が発生した場合は、次の方法で認証を試すことができます。
https://<username>:<password>@bitbucket.org/<username>/<repo>.git
最近、SourceTreeで同様の問題が発生しました。リモートOriginにプッシュ/プル/フェッチしようとすると、認証エラーが発生します(StashでSourceTreeを使用)。 StashでCAPTCHAを使用してチャレンジすることもありますが、正しい情報を提供してもしなくても違いはありません。
私にとっては、企業環境でSourceTreeとStashを使用しています。ユーザーアカウントはネットワーク資格情報に基づいています。ネットワークセキュリティの一環として、定期的にこれらのパスワードを変更する必要があります。
SourceTree/Stashは、ネットワークパスワードに加えられた変更を「認識」しているという前提で操作していました。しかし、少なくともこの例ではそうではなかったようです。
修正するために必要なことは、次のとおりです。
ツール>オプション>認証>編集(パスワードの編集)
現在のネットワークパスワードと一致するようにパスワードを設定すると、すべてが正常に機能し始めました。
これがOPに役立つかどうかはわかりませんが、他の誰かが同様の問題の答えを探しているのに役立つと思います。
[ツール]-> [オプション]-> [git]を選択し、[use system git]を選択すると、魔法のようになりました。
OS Xキーチェーンに保存されている値を編集することで問題を解決しました:"bitbucket"
を探しました(アプリケーションパスワード)値を変更しました。
次にSourcetreeで、プッシュしようとしたときに、新しいパスワードを直接再入力する必要がありました。
この問題は、特殊文字(! "§$%&&)を使用せずにリポジトリのパスワードを変更した後に解決されました。
明らかに、win-credential-storeとgitおよびbitbucketのWebインターフェースは異なる文字エンコーディングを使用しています。
完全な手順:
D:\shared\Project> cd /path/to/your/project
D:\shared\Project> git init
D:\shared\Project> git remote add Origin https://bitbucket.org/USERNAME/project.git
D:\shared\Project> git-credential-winstore.exe
それから
D:\shared\Project> git Push
Failed to erase credential: Element not found
fatal: Authentication failed for 'https://bitbucket.org/USERNAME/project.git/'
パスフレーズを変更した後:
D:\shared\Project> git Push
Counting objects: 102, done.
Delta compression using up to 8 threads.
... etc. ...
Windows tresoryの設定:
address: git:bitbucket.org (remeber the preceding "git:")
user: USERNAME
pass: old incl!"§§$%&, new without!"§$%%&/( (your passphrase!)
同じ問題がありました。 Git for Windowsのバグと関係があります。私にとっては、SourceTreeで使用されているGitを組み込みのものに変更するだけで十分です。
[ツール]-> [オプション]-> [Git]をクリックし、[埋め込みGitを使用]ボタンをクリックします
私は他のすべてを試してみましたが無力でしたが、これは実際に機能しました「資格情報を更新するには、Control Panel-> Credential Manager-> Generic Credentialsに移動します。 gitアカウントに追加して、更新したパスワードを使用するように編集します。」.
このリンクで見つかった上記のソリューション: https://cmatskas.com/how-to-update-your-git-credentials-on-windows/
Google /その他のoauthを使用してアカウントを作成した場合、まずアカウントのbitbucketパスワードを設定する必要があります。そのURLは次のとおりです。 https://bitbucket.org/account/user/ /またはメニューでBitbucket設定を探します。
その後、gitからログインできます(コマンドラインで試しました)。資格情報にはビルトインマネージャーを使用します。
credential.helper = manager
さて、bitbucketサイトでパスワードを設定し(メールも確認済み)、もう一度プッシュしようとすると、パスワードの入力を求められ、コードをプッシュしました。
Bitbucket Webページのメニューの場所の画像-> http://ctrlv.in/747291 2016年5月現在.
この問題は、gitアカウントとPCのpasswordが異なる可能性があるために発生します。以下の例に示すように、ユーザー名を含めます。
https://[email protected]/...
https: //[email protected]/...
Macでは、Preferences > Accounts
に移動し、Bitbucket Server
として新しいアカウントを追加し、会社のbitbucketサーバーのURLを入力する必要がありました。次に、プロトコルとしてHTTPS
を選択し、ユーザー名(@emailなし)とパスワードを入力する必要がありました。
また、Set Default...
ページの下部にあるPreferences > Account
ボタンをクリックして、この新しいアカウントをデフォルトアカウントとして設定します。
同じ問題がありました。 bitbucket設定でsourcetreeのアプリパスワードを追加する必要があります。メニューの[Bitbucket settings]、[App passwords]をクリックして、アプリパスワードを作成します。次にSourceTreeに移動して、保存したパスワードを編集します
長い間これと戦った後、私はうまくいくように見える何かを見つけたようです。私はURLを最適化してユーザー名を含めないようにしました(できるだけ一般的にしてください)が、認証ダイアログがポップアップし続けました:
次のような、思いついたすべてを試しました。
使用したツール(SourceTreeを含む)に関係なく、何も機能しませんでした。サーバーから「アプリのパスワードを作成」が返され続けました
基本的にあなたはする必要があります
サーバーがアプリのパスワードを使用することを提案する代わりに、応答でこれを返した場合、とてもいいでしょう...
Macユーザーの場合。現在のURLが異なるbitbucketアカウントであるため、ソースツリーにデフォルトのアカウントセットがあり、URLを複製できませんでした。だから、無効なソースパスを表示し、Advance Optionsをクリックし、認証に失敗しましたyour_clone_url。次の手順に従ってください
ここには、アカウントのリストが表示されます。下部のAddボタンをクリックして、bitbucketアカウントの詳細を追加するだけです。 [アカウント]タブにアカウントがリストされます。下からデフォルトの設定..ボタンをクリックして、デフォルトのアカウントを設定することもできます。これですべて完了です。
私は以下のコマンドを使用していました
git clone -b branch-name https://<username>@bitbucket.org/<repository>.git
ユーザー名にパスワードを追加すると問題が解決しました(以下のコマンドを参照):
git clone -b branch-name https://<username>:<password>@bitbucket.org/<repository>.git
ここで与えられたほとんどすべての解決策を試しました。
私のために働いたのは、GIT GUIを開いてプッシュしたことです。資格情報を要求し、正しいユーザーIDとパスワードを入力すると、再び動作を開始します。
Windowsではこれは私のために働いた
git config --global http.sslVerify false
MacOSの以下の手順に従って問題を解決しました。
上記のどれも私にとってはうまくいきませんでした-問題は私のSourcetree Preferencesにありました。 [ネットワーク]タブでは、「URLを含まないURLのデフォルトのユーザー名:」の設定がありました。以前に間違って入力したユーザー名は正しくありませんでした-ユーザー名ではなくメールに設定していました。エントリを強調表示し、両方の[削除]をクリックしました。次に、リポジトリページに戻り、もう一度[プッシュ]をクリックしました。プッシュすると、完全なユーザー名とパスワードの入力を求められ、正しく入力できました-プッシュはようやく機能しました。