Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Using Git hosting

Using Git hosting

HeChien Hsu

October 14, 2014
Tweet

More Decks by HeChien Hsu

Other Decks in How-to & DIY

Transcript

  1. Benefits of Git hosting • ⼈人員管控容易 - 減少管理成本 • 有眾多的

    Services - 可以做到 push / pull 狀態監控、搭配⾃自動化 unit testing … 等 • ⽅方便整合 Project Management System - 可以搭配票號整理 (Ticket number) • 可以輕易處理協同開發 - SSH based 的 Git server 很難處理這⼀一塊 (即便是 Gitosis / Gitolite 也⼀一樣) • 有提供 Code Review 功能與 Branch merge 管控 - 避免產品在上線 之前就炸爛給你看 • 與部署⼯工具搭配良好 - 尤其是 Rails 的
  2. Plans of Github • Github 以 Private 專案數量進⾏行收費 • 專案數⼩小於等於

    5 ,不管多少開發者,收你⼀一個 ⽉月七鎂 • 適合多開發者、專案數較少的團隊 • 注意:Private repo 是不會被別⼈人看到的
  3. Plans of BitBucket • BitBucket 以開發⼈人數進⾏行收費 • 開發⼈人數⼩小於等於 10 ,不管多少

    Private repo, 收你⼀一個⽉月⼗十鎂 • 適合少開發者、專案數較多的團隊 • 注意:但是有⽐比 Github 難⽤用⼀一點
  4. How to use? • Commit Tree - 可以很清楚、簡單看到誰送了這條 commit 、

    commit 內容、在 哪個 branch ,然後可以針對 commit 內某段程式碼進⾏行討論與 Code Review • Access management - 就是使⽤用者管理 • Branch management - 管理 Branch ,可以細到管理誰可以存取哪⼀一個 branch • Pull Request <= The most important • Service Hooks <= Cool things • Issues Tracking <= 不過建議使⽤用 Redmine • Wiki <= 不過建議在 Redmine 上⽤用 • HipChat <= 把 Branch update 的 E-mail 通知搬到 HipChat 上,更好⽤用
  5. Pull Request • 避免程式碼爆掉的⼀一種⼿手段 • 在程式碼準備從 develop merge 到 master

    之前 先擋下來看⼀一看,討論該修改的部分後再允許進 ⾏行 merge • 適合搭配 Git flow 來開發 • 參考: http://ihower.tw/blog/archives/5140
  6. Service Hooks • 搭配 Service Hooks 可以達到 服務整合的能⼒力 • 這部分

    Github ⽐比較多 … • 最常⾒見的⽤用途是 push 上去後 ⾃自動進⾏行測試、通知 … 等等
  7. Deploy example (using Rails) 1. git push commit to develop

    branch 2. send pull request from develop to master 3. agree and merge 4. execute “cap production deploy” on local terminal 5. done