Contribution Guide

最後編輯:2014-12-04 建立:2014-12-04 歷史紀錄

    CARL S設定開發環境

  • MAT L安裝 git , golang , make
  • pass build first

 

    CARL S程式碼概況簡介

  • MAT L/mods/ 模組目錄
    • /mods/loader/ 跟其他模組不同,這個模組用於載入其他模組
    • /mods/ui/ 這個模組用於顯示 webui
  • /pkg/ 此目錄放罝套件打包相關工具
  • /vendor/ 此目錄放置 sysd 相依性的 golang 套件 ( 以 /scripts/vendor.sh 更新維護 )
  • /scripts/ 此目錄放工具 scripts

 

    CARL S如何 follow 專案開發

  1. MAT L首先,請先完成開發環境的設定 ( A. )
  2. 定期 update repos 取得最新 sysd 開發版本 ( devel 分支 )
  3. 訂閱並閱讀 sysd meetup 通告信
  4. 有空連上 IRC 和開發者聊天 https://scrollback.io/h4

 

    CARL Ssysd 的開發流程

  • MAT Ldevel 是目前進行中的主開發分支
  • 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