Hexo 问题汇总
**生命在于折腾,不懂的善用搜索,来享受研究的乐趣吧!**
关于上传文件到github的方法
先建立仓库
第一步的话看一般的提示就知道了,在github新建一个repository(谷歌可以解决),都是可视化的界面操作,所以难度不大。或者看这里:https://help.github.com/articles/create-a-repo 这是官方help,虽然是英文的,但是基本都是图和代码,所以很容易读懂。
在github首页的右上角,点击new repository。
进入新建仓库的界面
填一下仓库名称,Initialize this repository with a README是可选的,不过本人建议最好选上,可以在后面省一个步骤。填好之后,点Create repository就行了。
克隆仓库
第二步开始就基本进入命令行模式了,不过要先从github上下载命令行工具。下载地址:http://windows.github.com/
然后进行简单的安装之后,会在桌面上创建两个图标,GitHub和Git Shell,GitHub是图形界面,Git Shell是命令行模式,而且默认的Git仓库是建在C盘的,个人建议要把路径重设下。
点开Git Shell,进入命令行。首先我们先要把GitHub上的我们新建的仓库clone下来,为了演示,我在GitHub上新建了一个名称为myRepoForBlog的git。
在初始化版本库之前,先要确认认证的公钥是否正确,如下:
ssh -T [email protected]
正确地结果如下:
Warning: Permanently added 'github.com,207.97.227.239' (RSA) to the list of known hosts.
Hi findingsea! You've successfully authenticated, but GitHub does not provide shell access.
上面的地址可以在如下界面找到:
clone成功如下:
Cloning into 'myRepoForBlog'...
Warning: Permanently added 'github.com,207.97.227.239' (RSA) to the list of known hosts.
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.
上传README.md文件
这个时候,我们的GitHub文件夹下就多了一个myRepoForBlog文件夹,进入文件夹目录,对仓库进行初始化,如果我们之前没有勾选创建README,则要先创建README.md文件,不然上传文件会报错。如果在第一步就勾选过了 Initialize this repository with a README ,则可以直接进入第四步.
git init
touch README.md
git add README.md
git commit -m 'first_commit'
git remote add origin https://github.com/findingsea/myRepoForBlog.git
git push origin master
首次提交
在本地根目录打开git bash
:
git init
git add .
git commit -m "init"
git remote add origin [email protected]:xheart/xheartx.git
git push origin master
提交更新
- 如果上一次是同一台设备提交的,那就直接同首次提交方法一致
- 如果上一次是另一台设备提交的,那需要先将远程服务器github上面的文件 pull 下来,再 push 上去。
git init
git remote add origin [email protected]:xheart/xheartx.git
git pull origin master
git add .
git commit -m "init"
git push origin master
报错
如果执行git remote add origin [email protected]:xheart/xheartx.git
,出现错误:
fatal: remote origin already exists
则执行以下语句:
git remote rm origin
在执行git push origin master时,报错:
error:failed to push som refs to.......
则执行以下语句:
git push origin gh-pages
创建分支
创建一个本地分支gh-pages,并切换到该分支下
git branch gh-pages
git checkout gh-pages
git push用法和常见问题分析
提交可访问的代码
github中默认只有一个库的master可以访问,要想其它库的代码,可访问,需要提交到gh-pages分支。
提交:在本地根目录打开git bash
:
git init
git add .
git commit -m "init"
git remote add origin [email protected]:xheart/xheartx.git
git push origin gh-pages
更新:
git init
git remote add origin [email protected]:xheart/xheartx.git
git pull origin gh-pages
git add .
git commit -m "init"
git push origin gh-pages
Git push
git push origin test:master // 提交本地test分支作为远程的master分支
git push origin test:test // 提交本地test分支作为远程的test分支
如果想删除远程的分支呢?类似于上面,如果:左边的分支为空,那么将删除:右边的远程的分支。
git push origin :test // 刚提交到远程的test将被删除,但是本地还会保存的,不用担心。
提交到github时,如果不想每次都打这么多命令,可以进行这样的设置
git push --set-upstream origin blog
#之后就用下面这个命令推送吧
git push
hexo问题
- 先hexo g再执行hexo d布署,也可使直接用hexo d -g
- hexo 更新到3.0之后,deploy的type 的github需要改成git
- 在执行 hexo deploy 后,出现 error deployer not found:git 的错误处理
输入代码:
npm install hexo-deployer-git --save