自建博客系列(三)同时托管到github和coding
在自建博客系列(一)在Windows平台下进行博客平台搭建一文中,我们已经顺利搭建成功博客环境,并在本地看见了效果,那么今天要实现的就是将本地内容搬到网上,并结合自建博客系列(二)关于域名(购买或免费多种选择)中的内容,捆绑上我们自己的域名。(因为在践行的过程中出现了比想象中多得多的出错提示,所以这后半部分等待后面继续来实践)
参考了一些网上的教程,考虑到:加快国内访问速度、为了百度搜索爬虫能抓取自己博客上的内容,拟把博客同时部署在Github Pages和Coding(之前的GitCafe)上。
一、部署到github前的准备
1、注册GitHub
- 打开GitHub官网
- 填写注册信息进行注册操作:没有登录的用户打开网站首页就会显示注册的操作(如图所示),或者是点击Sign up按钮进入注册详情页,注册你的username和邮箱,邮箱十分重要,GitHub上很多通知都是通过邮箱的。注册过程比较简单,在此我不再啰嗦。
- 填写注册信息:点击Sign up for GitHub(注册)按钮后,接下来是选择协议部分。根据自己的情况选择相关的协议,一般人选的都是免费的那一项。
2、创建仓库
*登录github账号:在github首页点击Sign in按钮进入登录页面。填写用户名或邮箱和密码,点击Sign in按钮登录。-
点击创建仓库:点击在登录的用户图像左边的+号和下三角符号按钮。
-
填写创建仓库信息:
仓库名称必须是用户名.github.io(别问我为什么,人家就是这样规定的),比如我的Github用户名为yusmile,那么我创建的repository的名字应该是yusmile.github.io。
*填好相关信息后点击Create repository(创建仓库)按钮。
3、配置SSH
- 在Git Bash输入以下指令(任意位置点击鼠标右键),检查是否已经存在了SSH keys。
ls -al ~/.ssh
-
如果存在的话(如上图),直接删除.ssh文件夹里面所有文件
- 如果不存在就没有关系,生成新的SSH Key:
-
$ ssh-keygen -t rsa -C "邮件地址@youremail.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):<回车就好>
注意1.此处的邮箱地址,你可以输入自己的邮箱地址;2.此处的「-C」的是大写的「C」
然后系统会要你输入密码:
Enter passphrase (empty for no passphrase):<输入加密串>
Enter same passphrase again:<再次输入加密串>
在回车中会提示你输入一个密码(如下图,我没有输入直接回车,如果你输入的话,要记得,到时候会用到),这个密码会在你提交项目时使用,如果为空的话提交项目时则不用输入。这个设置是防止别人往你的项目里提交内容。
注意:输入密码的时候没有*字样的,你直接输入就可以了。
注:id_rsa文件是私钥,要妥善保管,id_rsa.pub是公钥文件。
4、添加公钥到github
- 打开本地 C:\Users\Administrator.ssh\id_rsa.pub或 C:\Users\admin.ssh\id_rsa.pub此文件里面内容为刚才生成的密钥。如果看不到这个文件,你需要设置显示隐藏文件。准确的复制这个文件的内容,才能保证设置的成功。
-
登陆github系统,点击右上角的 Settings—>(屏幕左边)SSH and GPG keys —> New SSH key (屏幕右上角)—> 把你本地生成的密钥复制到里面(key文本框中), 点击 Add SSH key 就ok了
5、测试
可以输入下面的命令,看看设置是否成功,git@github.com的部分不要修改:
ssh -T git@github.com
如果是下面的反馈:
不要紧张,输入yes就好,然后会看到:
6、设置用户信息
现在你已经可以通过 SSH 链接到 GitHub 了,还有一些个人信息需要完善的。
Git 会根据用户的名字和邮箱来记录提交。GitHub 也是用这些信息来做权限的处理,输入下面的代码进行个人信息的设置,把名称和邮箱替换成你自己的,名字必须是你的真名,而不是GitHub的昵称。
git config --global user.name "yusmile"//用户名
git config --global user.email "182036669@qq.com"//填写自己的邮箱
二、部署到Coding.net前的准备
1、注册
打开Coding.net注册,我注册使用的邮箱和用户名同GitHub一致。
2、添加SSH公钥
此前已经在Github上创建了SSH公钥,直接用Github的SSH公钥就可以部署到Coding上了,本地打开前面的id_rsa.pub文件,复制里面的所有内容填写到公钥内容中,公钥名称可以随意起名,添加就可以了。3、测试公钥
打开Git Base Here 输入命令
ssh -T git@git.coding.net
如果返回如下提示,就表示公钥添加成功了
Coding.net Tips : [Hello ! You've conected to Coding.net by SSH successfully! ]
也有些前辈是看到下图提示后输入:yes
返回:
表示连接成功。
4、创建项目
-
同GITHUB差不多,创建一个项目
- 打开Pages服务
选择后点击“保存”即可。
三、同时部署到github和coding
1、_config.yml配置
想要同时部署到2个平台,就要修改博客根目录下面的_config.yml文件中的deploy如下
根据官网上给出的多部署配置方式需要修改成下面的形式:
deploy:
type: git
repo:
type: heroku
repo:
我是这样修改的:
2、安装插件
npm install hexo-deployer-git --save
3、设置完成后,在hexo目录下执行hexo d即可同时部署。
*** 报错***
-
提示:
- 对策:
删除你hexo 下面的.deploy_git文件夹,然后分别输入下面4条命令
- 对策:
git config --global core.autocrlf false
hexo clean
hexo g
hexo d
4、测试
部署完成后,浏览器打开以下地址
GitHub:http://username.github.io
Coding:http://username.coding.me
出现以下结果:
本文到此先告一段落。
看似简单的一篇,我其实折腾了不止3天,其中有很多错误,谢谢网络上的各位前辈提供资源和回答让我有了目前这个结果!
既然来了,留下个喜欢再走吧,鼓励我继续创作……
如果喜欢我的文章,那就关注我的简书账号吧,我们一起做朋友~~
欢迎关注个人微信公众号:海天心