跳转到主要内容

用于安全存储密码的Mercurial扩展

项目描述

这是Mercurial 5.6或更高版本的一个扩展,允许您安全地存储HTTP密码。该扩展本身不提供任何命令,您只需启用它,就会得到一个额外的提示

$ hg pull
pulling from https://example.com/private/repo
http authorization required for https://example.com/private/repo
realm: Mercurial
user: me
password: <SECRET>
would you like to save this password? (Y/n)  y
searching for changes
no changes found

这会在您的密钥链或密钥环中创建一个新项目

Mercurial (me@example.com)

一旦保存了密码,就没有什么可做的了。如果密码突然停止工作,您会得到一个新的提示。要管理或删除您的密码,请使用包含在macOS中的“密钥链服务”应用程序、GNOME Keyring或桌面环境中的类似应用程序。

要求

  • Python 3.6或更高版本。

  • Mercurial 5.6或更高版本。

  • 在其他平台上的SecretStorage

目前不支持Windows。

安装和使用

使用Pip安装扩展及其依赖项

$ pip install .

然后,将以下行添加到您的~/.hgrc

[extensions]
credentials =

为了避免为每个仓库输入密码,请使用auth.schemes

[auth]
example.prefix = example.com
example.username = me

这会将https://example.com上的所有仓库解析到相同的密钥项。有关详细信息,请参阅hg help config.auth

替代方案

此扩展的最明显替代方案是Mercurial Keyring扩展。它支持较旧的Mercurial版本和更多后端,但以不太可读的方式保存密码。

未来计划

  • 考虑是否实施一个完全定制的 urllib2 密码管理器,这样密码就不会比必要的存储在内存中更长。

致谢

感谢 Octobus 和 Heptapod 承办此项目,并让 Mercurial 开发再次变得有趣!

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

hg-credentials-0.1.2.tar.gz (16.7 kB 查看哈希值)

上传时间

构建分发

hg_credentials-0.1.2-cp312-cp312-macosx_12_0_x86_64.whl (22.1 kB 查看哈希值)

上传时间 CPython 3.12 macOS 12.0+ x86-64

hg_credentials-0.1.2-cp311-cp311-macosx_12_0_x86_64.whl (22.1 kB 查看哈希值)

上传时间 CPython 3.11 macOS 12.0+ x86-64

hg_credentials-0.1.2-cp310-cp310-macosx_12_0_x86_64.whl (22.1 kB 查看哈希值)

上传时间 CPython 3.10 macOS 12.0+ x86-64

hg_credentials-0.1.2-cp39-cp39-macosx_12_0_x86_64.whl (22.1 kB 查看哈希值)

上传时间 CPython 3.9 macOS 12.0+ x86-64

hg_credentials-0.1.2-cp38-cp38-macosx_12_0_x86_64.whl (22.1 kB 查看哈希值)

上传时间 CPython 3.8 macOS 12.0+ x86-64

由以下支持