自己整了台新Mac,这里简单记录一下同步hexo博客的经历过程,还是有些繁琐的。

1.拷贝项目文件

自己的项目文件其实也通过git管理了,但是不知为何在mac下使用npm install命令老是无法完成安装node_modules。同时自己现在还在用2.6.5版本的volantis主题,而官方都已经更新到v4了,但是自己目前也没有必要迁移到新版本的需求和精力,于是就继续沿用Windows上的旧主题了,于是乎通过选择将整个项目打包压缩然后通过U盘拷到Mac上(如果不压缩打包实在是有些太慢了,因为这些node包的js的细碎文件实在是太多了)

2.配置hexo路径

hexo可执行文件在node_modules下的.bin文件下,如果直接执行hexo new xx之类的命令,需要先将该路径添加到PATH变量中,于是乎可以在~/.bash_profile或者~/.zshrc中添加:

# hexo
export PATH="$PATH:/Users/lightsmile/Projects/myProjects/MyBlog//node_modules/.bin"

上面具体的路径要根据具体情况做出变动。

3.配置node

hexo配置完成后,可以正常执行hexo new命令,但是无法执行hexo generate -d命令,google后发现是node版本太新的问题,需要安装旧版本的node,参考文章2中提到v12.14没有问题,于是接下来打算装一下这个版本。

4.安装nvm

如果conda可以管理多个版本的Python环境一样,nvm也是用于管理node环境的工具,于是乎直接brew install nvm安装,没想到安装失败,只能去GitHub官方网页上找安装方式,需要执行如下命令:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash

或者

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash

于是乎便执行curl命令,没想到报443的错误,想到可能是代理的问题,于是继续Google寻找解决方案。

5.安装proxychains-ng

Google后找到了参考3,然后参考3提到了参考4,于是乎安装proxychains-ng

brew install proxychains-ng

安装人家的教程修改了/usr/local/etc/proxychains.conf后发现还是不行,然后又发现了参考5,按照参考5增加了变动之后发现还是下载失败,后来看参考3的评论中发现了可行的方案:其实设置DNS为114.114.114.114或者8.8.8.8就好了。

6.配置DNS

详情参见参考6,dns内容我设置的为8.8.8.8,经测试有效。

7.继续下载nvm并配置node

nvm下载完成之后还是找不到,然后自己执行了下source ~/.bash_profile,然后出于保险又把相关命令复制到了~/.zshrc中一份,相关命令如下:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

8.配置nvm镜像源

使用nvm安装node命令如下:

nvm install 12.14

然后发现nvm会直接从node的官网去下载,于是乎又失败了,只能配置镜像源,配置方式为将如下命令添加到~/.zshrc中:

export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node

配置完成之后更新一下zshrc(即执行命令source ~/.zshrc)然后继续执行install命令便可成功下载。

然后切换成12.14版本的node,切换命令如下:

nvm use 12.14

然后程序便提示已经成功切换。

9.参考

  1. 文档 | Hexo
  2. 部署Hexo踩过的坑—node14.0配置hexo - 知乎
  3. Failed to connect to raw.githubusercontent.com:443 - 知乎
  4. 使用 proxychains-ng 代理命令行 - 知乎
  5. 一次解决所有代理问题
  6. Mac :修改 DNS 及清除 DNS 缓存 - 简书
  7. NVM配置国内镜像 - 简书
  8. nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions

评论




博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议

本站使用 Volantis 作为主题,总访问量为
载入天数...载入时分秒...
冀ICP备20001334号