在使用hexo的主题的时候,许多人经常把主题fork到自己的repo,对我而言,这是没有必要的。

一般情况下,我不需要修改很多关于主题的内容,只需要改改配置文件就可以了,但是每次

更新,git pull的时候都提示需要提交自己的修改,这个时候应该怎么做呢?

使用git stash

git stash的作用是,保存当前的工作进度,此外会分别对暂存区和工作区的状态进行保存。

我们此时保存的状态,就是我们修改的_config.yml

如此一来,我们使用git stash进行保存,这样,repo的状态返回到最近的一次提交;此时,

进行版本更新即可,我们就可以在没有修改_config.yml的情况下更新我们的主题。

如何恢复

但是现在问题也出现了,我们既然保存了,如何恢复呢?此时,使用git stash pop命令,

我们就可以恢复最新保存的工作进度,并且将恢复的工作进度从存储的工作进度列表中清除。

此时,我们进行的修改,就可以重新作用于_config.yml文件上。不过一般情况下,会出现

几个conflicts,我们手动修改一下即可。

为什么不直接commit

如果commit了自己的改动,再进行pull的时候,如果出现了不能auto merge的冲突,会很难受,

需要fetch然后手动进行处理。

而且一旦commit,难免auto merge,我们的代码就会领先origin repo一个commit

在拉取代码时会造成不必要的麻烦。