我正在尝试在Azure中克隆我的webapp。
当我运行git clone https://username@appname.scm.azurewebsites.net:443/appname.git
时,终端会要求我输入密码。
但是当我填写密码时,它一直说认证失败了。
即使我在Portal中多次更改了密码(设置 - >设置部署凭据)。
它一直说我的身份验证失败了吗?
答案 0 :(得分:15)
我的网站遇到了同样的问题,结果发现问题出在网站网址上: 自动生成的远程网址为:https://user@site.scm.azurewebsites.net/site.git
另一方面,门户网站显示:https://user@site.scm.azurewebsites.net:443/site.git
使用以下命令更新git中的远程URL:
git remote set-url azure
https://<user>@<site>.scm.azurewebsites.net/<site>.git
https://<user>@<site>.scm.azurewebsites.net:443/<site>.git
事情开始按预期发挥作用。
故事的士气:检查部署网址和密码。
答案 1 :(得分:10)
接受的答案对我不起作用,但这有效。
使用
检查您设置的Azure网址git config --get remote.<azure-remote-name>.url
使用以下命令
重置azure urlgit remote set-url <azure-remote-name>
https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net:443/<site>.git
尝试使用
推送您的代码git push <azure-remote-name>
它将打开Windows身份验证屏幕,表示输入凭据以连接到https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net/<site>.git
取消此窗口。它将提示基本凭证窗口,该窗口表示输入凭证以连接到https://<user>@<sitename>[_<slotName>].scm.azurewebsites.net:433/<site>.git
输入您的凭证即可。
答案 2 :(得分:6)
尝试git clone https://<username>@praat.scm.azurewebsites.net:443/<repo-name>.git
时遇到了同样的问题。我通过删除端口来解决问题。
所以你的新网址不应该有 443 端口。
答案 3 :(得分:3)
由于azure
不支持ssh,您必须至少使用一次密码(在某些情况下,下次不会提示输入密码)
这篇文章描述了如何设置
https://azure.microsoft.com/en-us/documentation/articles/web-sites-publish-source-control/
以下是如何使用Azure设置git: http://weblogs.asp.net/shijuvarghese/building-and-deploying-windows-azure-web-sites-using-git-and-github-for-windows
以下是您执行的步骤
如果这是您第一次在Azure中设置存储库,则需要为其创建登录凭据。
您将使用它们登录Azure存储库并从本地Git存储库推送更改。在您的网络应用程序的刀片上,单击
Settings > Deployment credentials
,然后配置您的部署用户名和密码。完成后,点击“确定”。
答案 4 :(得分:2)
以上解决方案均不适合我。
在我的部署中观察到相同错误的原因是 因为我的密码包含字符“ @”。
这使我的Azure Web应用程序的Git克隆URL格式错误。当我通过删除@更改密码时,它解决了此问题。
答案 5 :(得分:2)
是的,这里的许多答案都指向正确的路径,但是我的情况是:-我被赋予了访问Azure云上的git repos的URL,我可以很好地在浏览器上访问/浏览代码(< em> Vs ),当我尝试克隆时,我遇到了同样的问题。
因此,当您单击下图所示的克隆时,您必须生成Git凭据,这很奇怪,不确定为什么,可能他们已经设置了我的帐户来访问Azure云,不能用来克隆git repos(意味着不能用作git凭证),这与我在AWS / gitlab / bitbucket上看到的有所不同,可能是帐户设置方面的问题,或者这很常见关于Azure的回购协议,如果您遇到同样的问题,请尝试一下。
另一个,正如每个人都已经提到的那样,请不要尝试连接到那里生成的url(看起来像这样):
https://project-account@dev.azure.com/project-name/apps/_git/library/
相反,请尝试通过您的GIT用户名进行连接,然后使用密码:
https://username@dev.azure.com/project-name/apps/_git/library/
作为提示,如果您的用户名中包含特殊字符,Git cmd / bash将遇到错误,因此请用有效字符替换这些字符,例如。 :-
类似于https://username%40xyz.com@dev.azure.com/project-name/apps/_git/library/
答案 6 :(得分:1)
假设您每次都输入正确的密码,可能是延迟/传播问题。
您还可以使用this wiki page上详述的网站级凭据。您可以通过&#34;获取发布配置文件&#34;在门户网站中下载您的发布凭据来获取这些内容。主WebApp栏上的选项。然后可以在class Physics implements Runnable{
private Ball ball;
private Pane game;
private Thread t;
private boolean paused;
Physics(Pane game, Ball ball){
super();
this.ball=ball;
this.game=game;
this.paused=true;
t=new Thread(this);
}
public void run(){
this.unPause();
while(ball.getXSpeed()!=0||ball.getYSpeed()!=0){
try {
sleep(20);
}
catch (InterruptedException ex){
ball.stop();
}
if(!paused) {
ball.step();
interactGravities();
checkObstacles();
checkTargets();
checkEdges();
}
}
Main.showResult();
}
}
文件中找到用户名/密码,它看起来像yourapp.PublishSettings
。如果您的用户级凭据不起作用(如果它们正确则应该是这样),则仅作为解决方法提及。
答案 7 :(得分:1)
我不得不这样做
git remote add origin https://username:password@dev.azure.com/xxx/_git/xxx
git add.
git commit -m init
push -u origin --all
答案 8 :(得分:1)
Current Azure Structure for adding credential
使用突出显示的用户、密码、确认密码部分来创建用户凭据。用它来继续你被卡住的地方。
答案 9 :(得分:1)
我有一个类似的问题,其中自动生成的git clone网址是:
https://group-admin-account-username@dev.azure.com/site.git
所以我不得不用我自己的帐户用户名替换
https://my-username@dev.azure.com/site.git
然后这提示我正确输入我的帐户密码:
git clone https://my-username@dev.azure.com/site.git
答案 10 :(得分:0)
如果您使用的是 Sourcetree 并且您尝试了此处的所有答案,但没有任何效果。
尝试使用此 url 结构作为源再次克隆您的项目:
https://<username>:<password>@dev.azure.com/project-name/apps/_git/library/
用户名和密码来自克隆分支时的生成 Git 凭据按钮。
答案 11 :(得分:0)
使用 Mac 我遇到了同样的问题。使用 Git 凭证管理器有效。
当您在设置中看到 PAT(个人访问令牌)时不要感到惊讶。
“一旦通过身份验证,凭据管理器会创建并缓存个人访问令牌,以便将来连接到存储库。在令牌过期之前,连接到此帐户的 Git 命令不会提示输入用户凭据。令牌可以通过 Azure 撤销回购。”
下面的链接应该有帮助
https://docs.microsoft.com/en-us/azure/devops/repos/git/set-up-credential-managers?view=azure-devops
答案 12 :(得分:0)
上面的一些让我很接近,例如@Nilay Vishwakarma 的帖子,但我最终发现身份验证问题的原因是我的密码包含一个“$”,后跟一个“..u7”,我最终当我输入时,在 powershell 中注意到它突出显示为黄色。
因此我认为可能是 CLi 在密码中使用这个字符有问题(即使它没有在 this tutorial 中作为保留字符被提及)。
我重新运行了“az webapp deployment user set --user-name [user] --password [pwd]”命令,修改后的密码没有“$”,然后能够输入我的凭据并进行身份验证。
答案 13 :(得分:0)
在添加我的SSH密钥后,使用SSH而不是HTTPS对我有用
答案 14 :(得分:0)
导航到部署中心 >> 部署凭据,将有本地git的应用程序凭据。使用用户名和密码即可。
答案 15 :(得分:0)
就我而言,以上方法均不能解决我的问题(但它们指示我找出问题所在)
我尝试了自动生成的应用程序凭据和自定义创建的用户凭据,并且每次收到身份验证失败消息时都如此。
凭据页面上的描述建议我使用以下格式的用户名:
<app-name>\<username>
这就是验证失败的原因。一旦我将用户名放在没有<app-name>
前缀的情况下,身份验证即告通过,一切正常。
希望此信息有帮助
答案 16 :(得分:0)
如果您使用的是Azure DevOps,则可以
答案 17 :(得分:0)
这可能会有所帮助:在我的第一个Web应用程序中,我不得不转到Deployment Center,Deployment Credentials。然后使用“应用程序凭据”或创建“用户凭据”。此后,删除本地计算机上的缓存凭据(窗口:控制面板\用户帐户\凭据管理器)。再次运行“ git push webapp master:master”,输入任意一个部署凭据。可行。
答案 18 :(得分:0)
对我有用的是我创建了个人访问令牌。 单击右上角的用户名>安全性>从左窗格中选择个人访问令牌>新令牌。 提供令牌名称和令牌范围,然后单击创建。 保存该令牌并将其用作密码。
答案 19 :(得分:0)
转到“安全”选项卡>>个人访问令牌>>新令牌>>授予它完全访问权限 >>注意访问令牌,因为它将用作密码
答案 20 :(得分:0)
在我的系统中,我从cli设置部署用户时从未创建过密码。我必须转到该应用程序的Web应用程序,应用程序服务,然后设置部署凭据
答案 21 :(得分:0)
对我来说,这是用远程网址克隆项目并取消Windows安全提示的问题。然后,它会问你密码。 一旦你能够克隆它,你就可以成功推送它。
故事的道德:在推动之前首先克隆它。
答案 22 :(得分:0)
在我的情况下,看起来天蓝色的服务器正在放慢速度。
Git部署
git push azure master
致命:
的身份验证失败FTP部署
验证 - 确定上传速度1-10K
答案 23 :(得分:0)
一个直接的解决方法是从主工具栏下载/获取发布配置文件(确保刷新门户页面)并使用.publishsettings文件中给出的密码。