hexo deploy一键部署免每次输入github账号密码
hexo deploy一键部署,将源码部署到GitHub的时候,由于安全鉴定的问题,每次都需要输入github账号密码,即使本地创建了ssh-keygen
,也是需要输入。那么针对这个问题该如何解决呢,现在就跟着我一起来解决这个问题
重新生成ssh-keygen
为了向 Git 服务器提供 SSH 公钥,如果某系统用户尚未拥有密钥,必须事先为其生成一份。 这个过程在所有操作系统上都是相似的。 首先,你需要确认自己是否已经拥有密钥。 默认情况下,用户的 SSH 密钥存储在其 ~/.ssh (用户私人目录)目录下。 进入该目录并列出其中内容,你便可以快速确认自己是否已拥有密钥:
1 | cd ~/.ssh |
寻找一对以 id_dsa 或 id_rsa 命名的文件,其中一个带有 .pub 扩展名。 .pub 文件是你的公钥,另一个则是与之对应的私钥。 如果找不到这样的文件(或者根本没有 .ssh 目录),你可以通过运行 ssh-keygen 程序来创建它们。 在 Linux/macOS 系统中,ssh-keygen 随 SSH 软件包提供;在 Windows 上,该程序包含于 MSysGit 软件包中。
1 | # -t 表示加密方式,非对称性加密 |
注意:在上述的操作过程中有输入密码的步骤,如果这里输入了密码以后每次使用这个密钥进行认证时都要输入密码,因此这里不需要输入密码。
GitHub添加公共密钥
将上一步提醒的公钥文件,后缀为.pub 的内容粘贴到下图的 key处即可
设置hexo项目的GitHub地址
在hexo项目的根目录下如果存在deploy_git文件夹,这时有两个处理case。如果从未部署过则可忽略该步骤。
代号 | case说明 | 操作方法 |
---|---|---|
1 | 曾经已经部署过,并且很在意曾经提交的版本 | 通过命令清除远程仓库的地址git remote rm origin |
2 | 曾经未提交过或者不在乎曾经提交的版本 | 删除文件夹.deploy_git (后续部署会自动创建) |
case 1 说明
如果选择case 1 ,清除.deploy_git的远程仓库地址的方式,则使用一下命令
1 | cd blog/.deploy_git |
以上命令注意替换、注意替换、注意替换(心都操碎了)。
case 2 说明
如果并不在乎曾经提交的版本,则直接删除该文件夹即可。
编辑hexo配置文件
在做好了上述的准备后,就需要对hexo的配置文件(_config.yml)
进行修改
1 | deploy: |
这里着重的看下配置项 repo
,这里的地址并不是GitHub的git地址,而是ssh地址,因此需要按照此处的规则进行限制
这里需要录入的GitHub地址即是下面位置的地址,可以自己拼接,也可以去复制粘贴
如果你喜欢这个博客或者觉得它对你有用,欢迎你转发、分享这个博客,让更多的人参与进来。 如果博客中使用的图片侵犯了您的版权,请联系作者删除。 谢谢 !