如何使用Git

test link[1].

test footnote2[2].
test3[3].

如何使用Hexo中,介绍了如何使用github来支持hexo。有了github的支持,我们就可以:

  • 更为可靠的文件管理,不再担心文件丢失;
  • 更为通用的多人协同;
  • 更为便利的网站发布,类似vercel是支持从github中直接拉取文件。或者我们也可以自己写github action脚本,实现自动部署。

对于当前最简单的应用场景,我们可以先忽略branch,大部分的改动都在master上。后续,如果需要增加人工审核了,才需要涉及branch。

基于hexo,我们来介绍git怎么使用。都是命令行。理解了命令行,才能理解UI。


参考代码开发,我们通常会在本地部署一套测试环境,以及一套开发环境。对应的,我们假设在本地会有一套website,一套github.
website,可以理解为本地的测试环境,基于hexo init创建好,可以完整的hexo generate, hexo server.
github, 可以理解为开发环境,git clone的一个仓库,主要用于本地的md文件编写。我们开发的惯例,是在github中编写md文件,VSCode可以提供基本的preview功能,帮助我们进行基本的markdown语法校验。当编写完成后,再拷贝到website中,进行本地的hexo generate, hexo server预览。预览没有问题后,再把中间正确的md文件拷贝回github中,然后提交。

之所以不将整个hexo相关的环境都放到github中,主要是几个考虑:

1、维护的文件数量,

2、不同机器,对应的hexo环境可能不一样,比如node的版本,hexo的版本,hexo安装的package的情况等。
所以,最靠谱的方式,将hexo相关的脚本以及配置文件放到github中,然后每次线上编译时,使用container,安装指定版本的node、hexo以及配置文件指定的package。
但目前,我们比较简单,所以,就远端服务器上部署一套hexo环境,然后通过github action脚本,把md文件copy到source/_posts中,编译完成后,再拷贝到网站目录。


当我们创建一篇post后,hexo new post ‘guide-to-git.md
对应的,会在source/_posts/下新增一个guide-to-git目录和一个guide-to-git.md文件。

我们编写完成后,将test目录和test.md文件拷贝到website下,hexo generate && hexo server,进行预览。没有问题后,如果中间有改动,则将test目录和test.md拷贝后github中,准备提交。

首先,万恶之源,都是提交之前没有git pull。所以,
请先git pull

请先git pull

请先git pull

重要的事情说三遍。

然后git status, 看看当前目录下,文件相对于仓库的变化。比如,我目前git status后的截图:

确认修改是符合预期的,开始git add,git add的作用是将指定的改动添加到stage中(stage可以暂时理解为本地缓存,缓存内的改动会在下一次commit后提交进代码仓库)。如果确认modified和new的文件、目录都是要加入的,直接git add .
Stage all files: git add .
也可以单个文件或者目录:git add example.html (replace example.html with your file name)
Stage a folder: git add myfolder (replace myfolder with your folder path)

这时,再次git status, 你会看到变化:

status的输入,也会提醒要commit。我们commit一把, git commit -m ‘your commit message’

最后,git push即可。
以上就是最简单的git使用。涉及到: git status, git pull, git add, git commit, git push


  1. reference1. ↩︎

  2. reference2. ↩︎

  3. reference3. ↩︎