貢獻

我們歡迎您加入 Hexo 的開發。🤗

開發

我們歡迎您加入 Hexo 的開發。此文件將協助您完成整個流程。

開始之前

請先閱讀 貢獻者公約行為準則

請遵循程式碼風格

此外,Hexo 有自己的 ESLint 設定,因此請確保您的貢獻能讓 ESLint 滿意。

工作流程

  1. Fork hexojs/hexo
  2. 將儲存庫複製到您的電腦並安裝相依性。
$ git clone https://github.com/<username>/hexo.git
$ cd hexo
$ npm install
$ git submodule update --init
  1. 建立一個功能分支。
$ git checkout -b new_feature
  1. 開始開發。
  2. 推送分支
$ git push origin new_feature
  1. 建立一個 Pull Request 並描述變更。

注意事項

  • 請勿修改 package.json 中的版本號碼。
  • 只有在測試通過時,您的 Pull Request 才會被合併。請不要忘記在提交之前執行測試。
$ npm test

更新官方外掛

此外,我們也歡迎針對 official-plugins 的 PR 或 issue。🤗

更新文件

Hexo 文件是開源的,您可以在 hexojs/site 上找到原始碼。

工作流程

  1. Fork hexojs/site
  2. 將儲存庫複製到您的電腦並安裝相依性。
$ npm install hexo-cli -g # If you don't have hexo-cli installed
$ git clone https://github.com/<username>/site.git
$ cd site
$ npm install
  1. 開始編輯文件。您可以啟動伺服器以進行即時預覽。
$ hexo server
  1. 推送分支。
  2. 建立一個 Pull Request 並描述變更。

翻譯

貢獻翻譯

Crowdin

現在我們使用 Crowdin 平台進行翻譯,任何人都可以貢獻翻譯並投票,而無需手動 Git 操作。

新增語言

  1. 提交一個新的 issue 來通知我們。有權存取 Crowdin 專案的成員會在設定中新增語言。
  2. 在 Crowdin 中新增語言後,任何人都可以貢獻翻譯。
  3. 將新語言新增至 source/_data/language.yml
  4. themes/navy/languages 中複製 en.yml 並將其重新命名為語言名稱(全部小寫)。

回報問題

當您在使用 Hexo 時遇到問題,您可以在疑難排解中找到解決方案,或在 GitHubGoogle Group 上詢問我。如果您找不到答案,請在 GitHub 上回報。

  1. 除錯模式呈現問題。
  2. 在 GitHub 上提交新的 issue 時,請按照 issue 範本中的步驟提供除錯訊息和版本。