Contribution Guide
設定開發環境
- 安裝 git , golang , make
- pass build first
程式碼概況簡介
- /mods/ 模組目錄
- /mods/loader/ 跟其他模組不同,這個模組用於載入其他模組
- /mods/ui/ 這個模組用於顯示 webui
- /pkg/ 此目錄放罝套件打包相關工具
- /vendor/ 此目錄放置 sysd 相依性的 golang 套件 ( 以 /scripts/vendor.sh 更新維護 )
- /scripts/ 此目錄放工具 scripts
如何 follow 專案開發
- 首先,請先完成開發環境的設定 ( A. )
- 定期 update repos 取得最新 sysd 開發版本 ( devel 分支 )
- 訂閱並閱讀 sysd meetup 通告信
- 有空連上 IRC 和開發者聊天 https://scrollback.io/h4
sysd 的開發流程
- devel 是目前進行中的主開發分支
- master 是公開釋出版本分支
- 開發 feature / patch
- 1. 先從 devel 分支 fork 到一個 local branch , 假設 xyz
- 2. change ... commit
- 3. 將 local branch 分支 xyz , 上傳到遠端成為 remote/origin/xyz 分支
- 4. 進 github.com 新增一個 devel -> xyz 的 pull request
- 5. 之後由其他開發者 review & merge 該 xyz 分支 進 devel 分支
- prototype 期採用 " merge first, fix later " 的 policy
- 每個人都可以 merge PR(Pull Request), 除了自己的 PR
- 例行性測試: https://travis-ci.org/hacking-thursday/sysd