问题标签 [git-credential-manager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 使用 git credential fill 命令时,从 Windows 凭据管理器中删除凭据仍然显示凭据
我正在运行最新的Git For Windows 2.29.2,对我credential.helper
来说默认设置为manager-core
。我确实确认运行git config --system --list
.
我想为 GitHub 上的任何 git 操作实现基于令牌的身份验证。所以我继续从Control-Panel-> Credential manger -> Windows Credential -> Generic Credentials
. 然后我执行了命令:
令我惊讶的是,上面的命令仍然返回凭据。我回到控制面板并确认它是否被删除并且我看不到凭据,即它们已经被删除。
为什么上面的命令成功地返回了凭据。据我所知,git 也会在内存中缓存 15 分钟的凭据。然而,上面的命令在几个小时后仍然返回了凭据。我尝试打开新的提示,但直到今天才走运,大约一天后我碰巧注意到该行为不再可重现。
现在它按预期工作,即如果我从控制面板的凭据管理器中删除凭据,git credential fill
则无法返回任何凭据,而是提示我输入凭据。
git credential fill
即使我在几个小时后尝试,为什么首先返回凭据?我只是无法理解这种行为。
git - 控制面板的凭据管理器是否与 git 的凭据帮助程序凭据管理器和凭据管理器核心相同
我正在运行最新的Git For Windows 2.29.2,对我credential.helper
来说默认设置为manager-core
。我确实确认运行git config --system list
.
我的 Git 安装显示它有两个凭证助手
- 适用于 Windows 的 Git 凭据管理器(较新版本的 Git 中已弃用的早期助手)和,
- Git Credential Manager Core(较新版本的 Git 中的默认助手)
在 git 终端中为两者运行version
命令确认它们的存在:
现在看来,git 可以使用三种方式来管理凭据:
(一个)。Windows 凭据管理器(控制面板中的那个),
(b)。适用于 Windows 的 Git 凭据管理器,以及
(C)。Git 凭据管理器核心。
如果我的理解是正确的,那么根据这个 SO 帖子,credential.helper=manager
它与控制面板的Windows Crendential Manager相同。
这是否意味着credential.helper=manager-core
它也与控制面板的凭据管理器相同。
我在这里有点困惑,哪个是什么。三者是否相同或彼此不同,并分别存储凭据。
linux - 如何存储多个 PAT/密码供 git 使用?
一个密码没问题
我想“安全地”存储我的凭据以供使用,git
所以我按照
此处的说明进行操作。这样我就不必每次都输入密码/PAT,我执行任何 git 操作。
安装
libsecret
使用sudo apt-get install libsecret-1-0 libsecret-1-dev
使用构建“凭证管理器”
sudo make --directory=/usr/share/doc/git/contrib/credential/libsecret
然后使用配置我的本地git文件夹
git config --global credential.helper \ /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret
做工很棒。
如何使用多个密码执行上述操作?
我没有得到的是如何对与不同帐户/存储库关联的许多密码执行相同的操作。有人建议我使用 gcm 核心。
我尝试按照此处gcm core
的说明进行安装。
下载 .deb 包
sudo dpkg -i <path-to-package> git-credential-manager-core configure
配置“凭证存储”
git config credential.credentialStore secretservice
(因为我使用 libsecret)。我 从本地 git 配置文件中删除了
Credential helper
指向 。/usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret
它仍然不起作用。当我尝试推送存储库时,我收到一条乱码消息,说明如何使用,git config
然后是填写凭据的请求(如图所示)。我不明白我在做什么!即credential store
,和. credential manager
_secret-service
gcm core
git - git用另一个帐户推送到我的另一个帐户?
我创建了一个新的 GitHub 帐户,并git push --setup-upstream origin
在添加我的原始分支后做了一个。
在 Windows 中的凭据管理器下删除我的旧 GitHub 凭据后,它似乎工作正常,正在从 Visual Studio Code 获取 GitHub 登录窗口以登录并使用新的帐户凭据。
一旦我git push
将我的项目推送到上游,我的 GitHub 现在告诉我我的旧帐户已将项目推送到我的新帐户的分支中......
这怎么可能?我没有从我的旧帐户分配任何 SSH 或其他令牌,所以这是令人困惑的部分。
我似乎也找不到解决方案来“注销”或摆脱我的旧 GitHub,将其从上游上传到我的新帐户。有什么我想念的吗?
git - 可以克隆但不能推送
我无法推送存储库。我能够克隆存储库。我在我的凭证管理器中看到过,但我看不到我的凭证保存在那里。我确实尝试过使用
在此之后,我只能克隆但不能推送更改。由于进程没有结束,因此推送没有错误输出。它甚至不要求我的凭据登录帐户。
我也尝试过卸载 Git 并重新安装,但它不起作用。重新安装后它没有要求我登录我的 github(即没有询问我的凭据)
git - windows下通过cmd独立调用git-credential-manager-core.exe?
我正在使用 LibGit2 向应用程序添加许多 Git 操作。我想添加 git-credential-manager-core 以帮助进行身份验证和凭据管理器填充访问。
但是,有什么方法可以连接到凭据管理器的登录 UI,提示输入 Github 的用户名和密码。此 UI 从命令行自动弹出,但在使用 LibGit2 时不会触发。
我查看了 Github 上的 GitCredential Manager 核心项目,我可以看到提供 UI 的组件,但是在尝试弄清楚如何明确地挂钩之前,我是否缺少某种方式,这是作为一部分提供的git-credentail-manager-core(或相关包)的?或者任何人都可以指出如何最好地连接它的示例或指导?
git - 是否可以通过 git-credential-manager-core.exe 访问 github.com?如何实施?
我正在开发 git 第三方工具。我想通过外部程序而不是 GIT 命令行在 C/C++ 中调用 git-credential-manager-core.exe。有人可以指出如何最好地连接它的示例或指导吗?
git - Github 个人访问令牌。致命错误:不在 git 目录中
我正在尝试在 RStudio 中使用我的 github 个人访问令牌。
当我尝试运行时,
$ git config credential.helper store
我收到错误“致命:不在 git 目录中”。我尝试创建一个新项目并将其初始化为 git 存储库,但它给了我同样的错误。我也尝试过克隆存储库,但它只是给了我设置令牌所需的错误。
我该如何解决这个问题,以便我可以存储我的访问令牌和克隆存储库?
git - Git 不断启动浏览器进行身份验证
类似于Git 不断提示我输入密码,但特别是在带有 Azure DevOps 的 macOS 上
我使用使用 Homebrew 安装的 git 凭证管理器,如下所示
中的相关设置git config --global --list
是
在几秒钟之内,它似乎允许一些操作,但几分钟后它会打开浏览器询问凭据。
git - Git 凭证 gpg/pass TTY-only 设置失败并显示“致命:GPG_TTY 未设置”,即使它是
我尝试按照https://github.com/microsoft/Git-Credential-Manager-Core/blob/main/docs/linuxcredstores.md的说明,让 Git-credential-manager-core 在 wsl2 中使用 fish 在 ubuntu 上工作。我选择了选项 2.GPG/Pass,据我了解,我在 wsl2 上属于“无头/仅限 TTY 会话”类别。
我已经生成了 gpg 密钥并初始化了 pass 实用程序。我不明白我是否需要运行 gpg-agent 守护程序,因为指令仅说明“您必须使用 pin-entry 程序配置 gpg-agent”。我确实运行它
gpg-agent --daemon
最后,我设置了GPG_TTY变量,如
echo $GPG_TTY
返回
/dev/pts/0所示。
运行git push origin master
导致错误消息:
那为什么要骗我呢?
一般来说,任何有关设置 git 凭据的帮助都是非常受欢迎的,因为我不知道什么工具负责什么以及我是否需要手动运行 gpg-agent。 提前致谢!
我在 Ubuntu 20.04 上运行在带有鱼壳的 linux 2 的 windows 子系统中。我只想能够推送到我的私人存储库,而无需每次都查找 github 令牌。