【问题标题】:Microsoft Git-Credential-ManagerMicrosoft Git 凭据管理器
【发布时间】:2020-03-04 22:44:53
【问题描述】:

我在 Linux (Ubuntu) 上使用 Microsoft Git-Credential-Manager 几个星期,带有一些凭据,现在我需要将修改推送到具有不同凭据的不同存储库。但我不能这样做,因为 GCM 试图使用不正确的数据来访问这个存储库。

如何更改这些或添加新的,以便能够使用不同的凭据提交到不同的存储库?有可能吗?

【问题讨论】:

    标签: git git-credential-manager


    【解决方案1】:

    您可以将git credential manager command to delete the entry 用于给定的远程主机。

    git credential-manager reject <url>
    

    一旦条目被删除,您就可以存储新的凭据。

    您可以为每个主机和用户存储 (git credential-manager store) 一个凭据:这将对该用户拥有的所有存储库有效。

    对于每个存储库的凭据,如 Git-Credential-Manager-for-Windows/issue 749 中所示,使用(对于 Windows 或 Linux)git config credential.useHttpPath,解释为 in git credentials

     git config --global credential.useHttpPath true
    

    【讨论】:

    • 感谢您的回答。那么有没有办法存储多个凭证,比如每个回购一个?基本上,每次我需要推送到不同的存储库时,我都需要删除旧凭据?
    • @darksoulsong 您可以使用git credential-manager store,如github.com/microsoft/Git-Credential-Manager-for-Windows/issues/… 所示,为每个主机和每个用户设置一个凭据。只需确保您推送的远程 URL 包含用户名 https::/username@github.com/username/myRepo.git
    • @darksoulsong 它应该:这个想法是 API(存储/拒绝/批准/...)对于 git credential-manager 命令的任何实现都保持不变。
    • @darksoulsong 您还可以在每个存储库中拥有一个凭据,如我编辑的答案所示。但我仍然建议坚持每个用户和服务器主机名使用一个凭据。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-21
    • 1970-01-01
    • 2016-02-07
    • 1970-01-01
    • 2020-02-23
    • 2022-01-15
    相关资源
    最近更新 更多