采用下面的命令编译,以Ubuntu为例子:
cd /usr/share/doc/git/contrib/credential/libsecret sudo make # 如果目录所在的文件系统是ext4,xfs,btrfs,还可以用下面的命令禁止对程序的任何修改 sudo chattr +i git-credential-libsecret你可以把该目录添加进$PATH,然后指定credential.helper:
echo '$PATH=$PATH:/usr/share/doc/git/contrib/credential/libsecret' >> ~/.bashrc git config --global credential.helper libsecret或者你不想修改$PATH,可以这样配置:
git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret这样就大功告成了。
运行为了测试,我们随便选择一个自己的项目,先clone到本地,然后做些修改后commit。
只有在修改远程仓库的时候才会进行凭证验证,比如push。通常的过程是这样的:
$ git push origin dev Username for 'https://github.com': apocelipes Password for 'https:/apocelipes@github.com':虽然提示的文字仍然使用的密码,但输入的应该是我们之前创建的access token。
验证通过后就会把变更push到origin,但配置自动验证后第一次仍然需要输入凭证,然后现在会是这样:
需要为你的密钥环配置一个单独的密码,你也可以选择用户的默认密码,配置完成后凭证就会被安全地存储了。
下次push将不会再验证用户名和凭证,效果和文章开头的图片里一样。
这样自动登录认证就配置完成了。
参考https://git-scm.com/book/zh/v2/Git-工具-凭证存储