朝花夕拾

A Development Engineer, a Life Liver, a Hope Holder

本地运行

注意:本地运行依赖环境安装了nodeJs和hexo

  1. 进入项目根目录
  2. 执行下面命令
    hexo clean
    hexo g ## 编译项目
    hexo s ## 启动项目

为了更方便操作,我写了个启动脚本

# find hexo process
hexo_pid=`ps -ef|grep hexo|grep -v grep|awk '{print $2}'`

#kill old process
echo "kill hexo_pid["$hexo_pid"]"
for id in $hexo_pid
do
kill -9 $id
done

# start up hexo
hexo s -g & >log.txt

sleep 5

hexo_pid=`ps -ef|grep hexo|grep -v grep|awk '{print $2}'`
echo $hexo_pid

保存项目源代码到github

当我们对博客进行变更时,可以及时的将最新的变更提交到git上。这样防止代码或者文章丢失。同时,源代码部分不需要把运行时的依赖文件上传到仓库,我们可以在项目中添加一个忽略文件

.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/

将项目关联到远程仓库

注意:下面操作依赖github账号和配置SSH-KEY到github。

如果是第一次提交,直接按下面流程操作即可:

  1. 在github上创建远程仓库
  2. git初始化
    在项目根目录执行 git init。将本地项目初始化为git项目
  3. 将本地项目的主分支设置为master(现在github上默认主分支为main)
    git branch -M master
  4. 将本地代码提交
    git add.
    git commit -m 'init'
  5. 在本地仓库执行下面命令,将本地仓库与远程仓库关联
    git remote add origin git@github.com:imelokid/melon-blog.git
  6. 将本地更新Push到远程
    git push

如果已经与远程仓库关联

直接执行下面命令

git add .
git commit -m "描述信息"
git push

项目发布到github

参考下面文章:
创建文章并部署到Github

将项目部署到远程服务

将编译好的前端文件,直接上传到nginx的静态文件项目空间中即可

WORKSPACE=/Users/melonkid/workspace/myprojects
PROGRAM_NAME="melon-blog"

scp -r $WORKSPACE/$PROGRAM_NAME/public/* melonkid@49.232.131.132:~/$PROGRAM_NAME