利用Hexo建立了本地网站(Docker方式建立),准备在GitHub上发布静态网站,每次新增内容后的同步就老是出错。经过多次摸索、试错后,找到了一个可行的办法,记录下来自用或者供其他网友参考。
第一步:克隆远程仓库分支到本地指定目录(这里是在/app目录下的public目录,这个目录也是Hexo生成的静态网站文件存放目录),当前工作目录是/app。
git clone <远程仓库地址> <本地目录路径>
1 | git clone -b master --single-branch git@github.com:qxz5637/hexo.git public |
将远程仓库的master分支克隆到当前目录的public目录下,若该目录不存在将自动创建。下面是命令执行结果:
1 | # pwd |
第二步:进入public目录,将该文件夹下的所有文件盒文件夹删除
1 | cd /app/public |
命令运行完成后,.git目录仍然保留。
1 | # ls /app/public/.git |
第三步:提交到远程仓库,将远程仓库该分支下的文件清空
1.显示所有的远程主机
1 | # git remote -v |
2.将本地改动同步到远程仓库
1 | # git add . |
运行git add 命令无返回结果,下面是运行git commit -m "clean"的结果
1 | # git commit -m "clean" |
运行git push 命令及返回结果
1 | # git push |
登陆GitHub,查看该分支的所有文件已清空。
至此,完成了远程仓库的清空。
第四步:在/app目录,运行命令hexo g,重新创建新的静态网站文件
1 | # hexo g |
第五步:将新建的静态网站文件同步到远程仓库,与第一步相似
1.所有文件加入本地库
1 | # git add . |
2.提交到缓存
1 | # git commit -m "auto" |
3.同步到远程仓库
1 | # git push |