文章更新時間錯亂問題

問題 在設定完 GitHub Action 之後,我發現我的文章的更新時間都錯了,會全部變成當天日期。但是本地生成的就沒有這個問題,經過一番盤查和猜測後,我發現問題是因為 git 不會把 modified date 紀錄,因為每台電腦的時區都是不一樣的,紀錄起來沒有意義。但是我們需要這項 meta data,所以我們就要自己想法紀錄 解法 v1.0 首先,因為每一篇文章 hexo 都會紀錄建立時間,所以我們可以直接把他抓出來,然後把檔案的更新時間設成這個時間就可以啦! 更改檔案的 modified time 這個功能只要用我們最熟悉的 touch 就可以做到了。一般我們使用 touch 的時候會把 modified time 改成當下時間,那要改任意時間只要加上 -t 選項就可以啦 -t STAMP use [[CC]YY]MMDDhhmm[.ss] instead of current time 假設我們有個檔案 tmp ,我想把他的日期改成 1999/3/23 12:32:33 ,那我可以這樣下指令 ted timeouch -t'19993231232.33' tmp 抓出檔名、日期 # git create time grep -rnw source/_posts -e 'date' output:(這裡的 date: 後面我多加了一個空白,原因後面會說) source/_posts/hexo-installation.md:3:date: 2020-02-10 17:26:45 source/_posts/blessed.md:3:date: 2020-02-17 23:24:10 source/_posts/bash.md:3:date: 2020-02-16 22:15:10 source/_posts/hexo-cli-extras....

2020-August-20 · 2 分鐘 · simba-fs

加入 google search 和 sitemap

前置設定 npm 安裝 hexo-generator-sitemap npm i -S hexo-generator-sitemap 設定插件 將以下內容加到 _config.yml 注意空白 # sitemap sitemap: path: sitemap.xml 驗證網域 如果你的 hexo 是架在自己的網域可以跳過這步 因為我的 hexo 是 託管在 GitHub page,在 Google Search Console 驗證的時候沒辦法用網域,所以要放一個特別的檔案到我們的網站根目錄 首先到 Google Search Console 新增一個網域 選擇右邊,輸入你的網址 下載提供的 html 並放到 source/ 資料夾 忽略 接下來會遇到 hexo 在生成的時候把這個 html 也放到模板裡面,所以我們要把他加入忽略清單裡面 在 _config.yml 裡面找到 skip_render 把直接檔名寫在後面或是用清單都可以 注意空白 # 直接寫 skip_render: 'googlebabababababa.html' # 或是用清單 skip_render: - 'googlebabababababa....

2020-August-19 · 1 分鐘 · simba-fs

GitHub Action 自動部署 hexo

前言 本來部署 hexo 都是手動下指令,但是這樣在手機上因為沒辦法裝 hexo ,所以一直不能在手機上寫文章。剛好想到 GitHub Action 可以滿足我的需求,上網查了一下資料發現蠻多人有和我一樣的需求,這次參考的是 owlran 大大的文章。 ssh key 因為要部署到 GitHub repo,最方便的方法當然是 ssh key 啦。 ssh-keygen 首先隨便找個資料夾產生一組 ssh key ssh-keygen -f deploy-key GitHub 再來要讓 GitHub 知道你的 ssh key(public/secret 都要) public key public key 是要放在你的 <username>.github.io 的 repo 下 .ggithub.io -> settings -> Deploy keys -> add deploy key 新增一個 ssh key,名字叫 DEPLOY_KEY_PUB 把 depoly-key.pub 的內容貼上,記得下面的勾勾(Allow write access )要選起來 secret key secret key 要放在你存放部落格檔案的 repo,owlran 大大是放在同一個 repo 不同 branch,我是放在兩個不同 repo,其中放部落格檔案的 repo 我設成 private repo(因為我放了一些 gitalk 要用的 clientSecret,這個不能公開)。...

2020-August-16 · 2 分鐘 · simba-fs

hexo-config

各種設定值嘗試 Highlight - # highlight: rainbow + highlight: rainbow var a = 7122; console.log(a); var a = 7122; console.log(a); int a = 7122; cout << a;

2020-February-12 · 1 分鐘 · simba-fs

audo-depoly-by-github-action

自動部屬部落格 參考網址:https://op30132.github.io/2020/02/05/github-action/ 生成公私鑰時不用在部落格根目錄,記的不要加入 git,要刪掉 name: HEXO CI on: push: branches: - master jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: [12.x] steps: - uses: actions/[email protected] - name: Use Node.js ${{ matrix.node-version }} uses: actions/[email protected] with: node-version: ${{ matrix.node-version }} - name: Configuration environment env: HEXO_DEPLOY_PRI: ${{secrets.HEXO_DEPLOY_PRI}} run: |mkdir -p ~/....

2020-February-11 · 1 分鐘 · simba-fs

gitalk

啟用 gitalk 留言 到這個網址填資料 加入下面的片段到_config.yml disqus: enabled: false gitalk: enabled: true owner: <username> repo: <username>.github.io admin: ['<username>'] clientID: <clientID> clientSecret: <clientSecret> 加入下面的片段到themes/cactus/layout/_partial/comments.ejs <% if(page.comments && theme.gitalk.enabled){ %> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/gitalk.css"> <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/gitalk.min.js"></script> <script src="https://cdn.bootcss.com/blueimp-md5/2.10.0/js/md5.min.js"></script> <div id="gitalk-container"></div> <script type="text/javascript"> var gitalk = new Gitalk({ clientID: '<%= theme.gitalk.clientID %>', clientSecret: '<%= theme.gitalk.clientSecret %>', id: md5(window.location.pathname), repo: '<%= theme.gitalk.repo %>', owner: '<%= theme.gitalk.owner %>', admin: '<%= theme.gitalk.admin %>', distractionFreeMode: '<%= theme....

2020-February-11 · 1 分鐘 · simba-fs

hexo-cli-extras

好用的插件 因為 hexo 本身沒有提供編輯器 所以每次在編輯文章時都需要打路徑 這個插件他會去找到你的文章 然後給你選要編輯那一個 這只是其中一個功能 還有重新命名、刪除、隔離和加入 隔離是將其他文章暫時隔離,加入是將文章加回來

2020-February-11 · 1 分鐘 · simba-fs

hexo-installation

把 hexo 部屬到 gh-page 執行 $ npm i hexo -g $ hexo init blog $ cd blog 修改 _config.yml 刪除最後兩行,改成 deploy: type: git repo: [email protected]:<username>/<repo> branch: master 執行 $ npm i hexo-deployer-git $ hexo depoly 在 repo 設定中 GitHub Pages 隨便選一個 Jekyll theme,這樣才不會 404 地雷:在之後都部屬要加上 -g $ hexo d -g 不然不會生效 完成! 將原始碼保存 執行 $ git checkout -b hexo $ git add . $ git commit -m init $ git push -u origin hexo 完成

2020-February-10 · 1 分鐘 · simba-fs