一台电脑两个博客

这个就是为了这个网站做的过程。

参考网址

https://zhuanlan.zhihu.com/p/69218641

新建一个 github 账号

新建一个公钥

https://zhuanlan.zhihu.com/p/69218641

查看当前密钥

首先我们打开终端输入ls ~/.ssh/可以查看当前已有的密钥,显示id_rsaid_rsa_pub说明已经有一对密钥

创建新的密钥

首先使用以下命令进入 SSH根目录下:

1
cd ~/.ssh/

我用的方法一

方法一

直接使用以下命令创建新密钥,然后两次回车即可:

1
ssh-keygen -t rsa -f  ~/.ssh/这里是新密钥名称 -C "这里是你的邮箱"

注意区别新密钥名称和旧密钥名称,不要相同!!!

我的命令是

1
$ ssh-keygen -t rsa -f ~/.ssh/zhizhi -C "zhouzwzhizhi@163.com"

查看目录下多了2个文件

1
2
$ ls
id_rsa id_rsa.pub known_hosts zhizhi zhizhi.pub

方法二

使用下面命令行创建新密钥:

1
ssh-keygen -t rsa -C "这里是你的邮箱"

回车后会出现:

1
2
Generating public/private rsa key pair.  
Enter file in which to save the key (/c/Users/you/.ssh/id_rsa):

注意此时需要你输入新密钥的名称,同样要注意区别新密钥名称和旧密钥名称,不要相同!!!之后再两次回车,新密钥创建完毕!

配置config

查看你的.ssh/根路径下, 有没有config文件,( 比如我的路径为C:\Users\Lenovo.ssh)没有则使用以下命令创建一个config文件:

1
touch config

用记事本或者其他工具打开config文件(注意config文件是没有任何后缀名的),写入以下配置:

1
2
3
4
5
6
7
8
9
10
11
#第一个账号,默认使用的账号,不用做任何更改
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa

#第二个新账号,#"xxxxxx"为前缀名,可以任意设置,要记住,后面需要用到
Host xxxxxx.github.com
HostName github.com
User git
IdentityFile ~/.ssh/这里是你创建的新密钥的名称

实际配置如下,全用 zhizhi

1
2
3
4
5
6
7
8
9
10
11
12
#第一个账号,默认使用的账号,不用做任何更改
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa

#第二个新账号,#"xxxxxx"为前缀名,可以任意设置,要记住,后面需要用到
Host zhizhi.github.com
HostName github.com
User git
IdentityFile ~/.ssh/zhizhi

设置新GitHub账户SSH key

复制 .ssh 目录下 zhizhi.pub 的内容,然后打开你的新GitHub账号主页,依次进入Settings —> SSH and GPG keys —> New SSH key,将刚复制的内容粘贴到Key那里,Title可以随便填,点击Add Key保存。

清空本地的 SSH 缓存,添加新的 SSH 密钥 到 SSH agent中

使用命令cd ~/.sshcd到.ssh根目录下,依次执行以下命令:

1
2
3
ssh-add -D
ssh-add id_rsa #旧密钥名称,一般是id_rsa
ssh-add zhizhi #新创建的密钥名称

如果执行以上命令出现错误:Could not open a connection to your authentication agent.,那么就需要先执行ssh-agent bash,再执行以上命令

验证配置是否成功

依次执行以下命令,第一个为默认ssh_key验证;第二个为新的ssh_key验证,其中的前缀为你先前在config文件中的命名

1
2
ssh -T git@github.com
ssh -T git@zhizhi.github.com

依次显示以下信息, 则说明配置成功:

1
2
3
4
5
6
$ ssh -T git@github.com
Hi VincereZhou! You've successfully authenticated, but GitHub does not provide shell access.

$ ssh -T git@zhizhi.github.com
Hi NanpengyouAndZhizhi! You've successfully authenticated, but GitHub does not provide shell access.

取消全局用户名/邮箱配置,单独设置用户名/邮箱

执行如下命令,取消全局用户名和邮箱配置(如果已经设置了全局的话):

1
2
git config --global --unset user.name
git config --global --unset user.email

分别进入你的两个Hexo博客.git目录下执行以下命令单独设置用户名/邮箱:

1
2
git config user.name "这里是用户名"
git config user.email "这里是你的邮箱"

我的命令如下

先到 D:\Desktop\blog\.deploy_git\.git 目录下设置

1
2
git config user.email "zhuanzhugongxian@sina.com"
git config user.name "VincereZhou"

再到 D:\Desktop\blog_zhizhi\.deploy_git\.git 目录下设置

1
2
git config user.email "zhouzwzhizhi@163.com"
git config user.name "NanpengyouAndZhizhi"

如果此时报错:fatal: not in a git directory,说明你没有进入.git目录下,具体路径:\Hexo.deploy_git.git,.git目录是隐藏的,需要你设置隐藏目录可见

执行以下命令可以查看设置是否成功

1
git config --list

例如在 D:\Desktop\blog_zhizhi\.deploy_git\.git 目录下输入,可以看到已经有了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
$ git config --list
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
http.sslbackend=openssl
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt
core.autocrlf=true
core.fscache=true
core.symlinks=false
pull.rebase=false
credential.helper=manager-core
credential.https://dev.azure.com.usehttppath=true
gui.encoding=utf-8
i18n.commitencoding=utf-8
svn.pathnameencoding=utf-8
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
core.symlinks=false
core.ignorecase=true
user.email=zhouzwzhizhi@163.com
user.name=NanpengyouAndZhizhi
(END)

hexo 配置文件修改git地址

打开你的第二个博客Hexo目录下的_config.yml文件,找到deploy关键字,写入以下配置并保存:(就是相比于正常配置多了一个 zhizhi.github.com 的 zhizhi)

1
2
3
4
5
6
deploy:
type: git
# repo: https://github.com/VincereZhou/VincereZhou.github.io.git
repo: git@zhizhi.github.com:NanpengyouAndZhizhi/NanpengyouAndZhizhi.github.io.git
branch: master

中文域名部署到github

中文域名

https://www.jianshu.com/p/ce95f34f8821

中文域名需要先转换成Punycode标准编码的字符串

进行转换的网址如下:

http://www.webmasterhome.cn/tool/punycode.asp

举个例子,假设有个域名是 栗子.网络 ,转换关系如下。
栗子.网络------>>xn--i8s301a.xn--io0a7i

之后你就可以将这个 xn--i8s301a.xn--io0a7i 文件夹黏贴到本地的 CNAME 文件夹 和 github 仓库配置中。

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2021-2023 zhizhi
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信