这是 git-credential 命令,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
git-credential - 检索和存储用户凭据
概要
git 凭证
商品描述
Git 有一个内部接口,用于存储和检索特定于系统的凭据
helpers,以及提示用户输入用户名和密码。 git 凭证
命令将此接口公开给脚本,这些脚本可能想要检索、存储或提示
凭证的方式与 Git 相同。 这个可编写脚本的界面的设计模拟了
内部 C API; 看 此 混帐 凭据 API[1] 有关概念的更多背景信息。
git-credential 在命令行上采用“操作”选项(填充、批准或
拒绝)并读取标准输入上的凭证描述(请参阅输入/输出格式)。
如果操作已填写,git-credential 将尝试添加“用户名”和“密码”
通过读取配置文件,通过联系任何已配置的
凭证助手,或通过提示用户。 的用户名和密码属性
然后将凭证描述与已经存在的属性一起打印到标准输出
提供。
如果操作是批准,git-credential 会将描述发送到任何已配置的
凭证助手,可以存储凭证供以后使用。
如果操作是拒绝,git-credential 会将描述发送到任何已配置的
凭证助手,它可以删除任何与描述匹配的存储凭证。
如果操作是批准或拒绝,则不应发出任何输出。
典型 用途 OF GIT 凭据
使用 git-credential 的应用程序通常会在这些之后使用 git credential
脚步:
1. 根据上下文生成凭证描述。
例如,如果我们想要 https://example.com/foo.git 的密码,我们可能会生成
以下凭据描述(不要忘记末尾的空行;它告诉
git 凭据表明应用程序已完成提供其拥有的所有信息):
协议=https
主机=example.com
路径=foo.git
2. 要求 git-credential 为我们提供此描述的用户名和密码。 这是
通过运行 git credential fill 完成,将步骤 (1) 中的描述提供给它的
标准输入。 完整的凭证描述(包括凭证本身,
即登录名和密码)将在标准输出上生成,例如:
协议=https
主机=example.com
用户名=鲍勃
密码=secr3t
在大多数情况下,这意味着输入中给出的属性将在输入中重复
输出,但 Git 也可能修改凭证描述,例如通过删除
协议为 HTTP(s) 且 credential.useHttpPath 为 false 时的路径属性。
如果 git 凭证知道密码,这一步可能不涉及
用户实际输入了这个密码(用户可能输入了一个密码来解锁
取而代之的是钥匙串,或者如果钥匙串已经存在,则不进行用户交互
解锁)之前它返回密码=secr3t。
3. 使用凭据(例如,使用步骤中的用户名和密码访问 URL
(2)),看看它是否被接受。
4. 报告密码成功或失败。 如果凭证允许
操作成功完成,然后可以用“批准”操作来标记它
告诉 git credential 在下一次调用中重用它。 如果凭证被拒绝
在操作过程中,使用“reject”动作,这样 git credential 就会要求一个
下次调用时使用新密码。 在任何一种情况下,都应该提供 git 凭证
从步骤 (2) 获得的凭证描述(其中也包含那些
步骤(1)中提供)。
输入输出 FORMAT
git 凭证读取和/或写入(取决于使用的操作)凭证信息
在其标准输入/输出中。 此信息可以对应于 git 的键
凭据将获取登录/密码信息(例如主机、协议、路径),或
要获取的实际凭据数据(登录名/密码)。
凭证被拆分为一组命名属性,每行一个属性。 每个
属性由键值对指定,由=(等号)分隔,后跟
新队。 键可以包含除 =、换行符或 NUL 之外的任何字节。 该值可能包含
除换行符或 NUL 之外的任何字节。 在这两种情况下,所有字节都按原样处理(即,有
没有引用,并且不能传输包含换行符或 NUL 的值)。 名单
属性以空行或文件结尾结束。 Git理解如下
属性:
协议
将使用凭证的协议(例如,https)。
主持人
网络凭据的远程主机名。
径
将使用凭据的路径。 例如,用于访问远程 https
存储库,这将是服务器上存储库的路径。
用户名
凭据的用户名,如果我们已经有了一个(例如,来自 URL、来自用户或
来自先前运行的帮助程序)。
密码
凭证的密码,如果我们要求它被存储。
网址
当这个特殊属性被 git credential 读取时,该值被解析为一个 URL
并将其视为已读取其组成部分(例如, url=https://example.com 将
就像提供了 protocol=https 和 host=example.com 一样)。 这可以帮助
调用者避免自己解析 URL。 请注意,缺少的任何组件
URL(例如,上例中没有用户名)将设置为空; 如果你
想要提供一个 URL 并覆盖一些属性,首先提供 URL 属性,
其次是任何覆盖。
附注
1. Git 凭证 API
文件:///usr/share/doc/git/html/technical/api-credentials.html
使用 onworks.net 服务在线使用 git-credential