我正在使用 LibGit2Sharp 向应用程序添加许多 Git 操作。我添加了 来Microsoft.Alm.Authentication帮助进行身份验证和凭证管理器访问。它非常适合检索已从命令行输入的凭据。
但是,有什么方法可以连接到凭据管理器的登录 UI,提示输入 Github、BitBucket 和 VSTS 的用户名和密码。此 UI 会从命令行自动弹出,但在使用 LibGit2Sharp 时不会触发。
我查看了 Github 上的 GitCredentialManager 项目,我可以看到提供 UI 的组件,但在尝试弄清楚如何显式挂钩这些组件之前,我是否遗漏了一些方法,即这是作为Microsoft.Alm.Authentication(或相关包)?或者有人可以指出如何最好地将其连接起来的示例或指南吗?
我有2个GIT储存库副本,我们称它们为“ origin”和“ backup”。我要实现的目标如下。我的团队不断推动并将其更改同步到“起源”,但是我想确保我在不同的地理位置拥有一份“起源”副本,以备重复之用,以防万一发生大火摧毁我办公室里的一切。为了实现这一目标,我将相同的git repo副本保留在云上。
现在,结合使用Jenkins和Windows批处理脚本,我试图找出一种使这些存储库保持同步的方式。批处理脚本将负责实际的同步操作,Jenkins将确保同步操作定期运行。重复的副本称为“备份”(您可能已经猜到了)。
问题是,当我直接从命令提示符运行批处理脚本时,它会完全按照我希望的方式执行;但是,当我尝试通过Jenkins作业执行批处理脚本时,它一直在等待“备份”存储库的用户名和密码。“备份”存储库的凭据已经存储在Windows凭据管理器中,并且批处理脚本在直接执行时可以使用凭据,但是以某种方式,当我尝试通过Jenkins执行时,情况并非如此。
我尝试了谷歌搜索,甚至还进行了大量搜索以查看是否可以在詹金斯论坛上找到一些东西,但是到目前为止,我还没有发现任何有用的东西。
我不确定这是否有用,但是下面是我的批处理脚本供参考。
@echo OFF
pushd K:
pushd "K:\my-git-workspace\mygit-repo"
echo Pulling "master" from origin
git pull origin master
echo Pulling "master" from backup
git pull backup master
echo Pushing "master" to backup
git push backup master
echo Pushing "master" to origin
git push origin master
echo Pulling all tags from origin
git pull --tags origin
echo Pulling all tags from backup …Run Code Online (Sandbox Code Playgroud) 我想在我的 Angular 应用程序中实现凭证管理 API
我的login.html 看起来像这样
<div id="login-form" data-ng-form="loginForm" data-ng-controller="LoginFormController">
<div>
<input type="text" name="username" placeholder="username" data-ng-model="loginCredentials.username" id="uid" autocomplete="username">
<input type="password" name="password" placeholder="password" data-ng-model="loginCredentials.password" id="pwd" autocomplete="new-password">
</div>
<div>
<button id="loginButton" data-ng-click="login()">{{'label.button.login' | translate}}</button>
</div>
<div data-ng-show="authenticationFailed">
<p>{{authenticationErrorMessage | translate}}</p>
</div>
</div>Run Code Online (Sandbox Code Playgroud)
我有 LoginFormController 作为我的控制器。在函数内部,我创建了名为 PasswordCredential 的新对象,如下所示
var form = angular.element('#login-form');
//console.log(form);
var cred = new PasswordCredential(form);
//store the credentials
navigator.credentials.store(cred)
.then(function(){
});
Run Code Online (Sandbox Code Playgroud)
但我收到错误密码凭据:id 不能为空
请帮助
javascript web credential-manager service-worker progressive-web-apps
我已经在 Windows 7 64 位中很好地设置了 GitforWindows,并将凭据管理器设置为“Wincred”。
然而,当我运行一些命令(例如git remote prune origin在 GitBash 中)时,它会在控制台中给出以下错误,但运行命令:
Failed to load advapi32.dll
Run Code Online (Sandbox Code Playgroud)
这是为什么 ?如果需要对凭据管理器设置进行某些操作,那么我需要完整解释如何进行这些设置以及每个设置的含义。
注意:我仅在某些命令上遇到此问题,其他命令运行正常,没有任何错误。
git ×2
advapi32 ×1
batch-file ×1
c# ×1
git-bash ×1
javascript ×1
jenkins ×1
libgit2sharp ×1
web ×1
windows ×1