On Github Peilun0912 / git-workflow-introduction
接下來將介紹名為 gitflow 的一種搭配 git 進行軟體開發的流程,以及存放 git 儲存庫的平台和輔助使用的工具。
了解 gitflow 各個分支(branch)所扮演的角色,就差不多能理解整個開發流程了。
Git 的分支總是分久必合,合久必分,但是合併分支通常影響軟體的狀態甚鉅,為了確保程式碼的品質,當要合併回主要分支時,應該一律開 pull request。
Pull requests 並非 git 內建的功能,而是由儲存庫的服務平台提供。
簡單來講,開 pull requests 就是發出合併分支的請求,平台會提供介面讓其他開發者完整檢視軟體將會有哪些變更,他們可以就每一行變動的程式碼討論、提出問題,這階段就是所謂的 code review。
人人都可以開 pull requests,但是在比較嚴謹的情況下,只有該儲存庫的管理員帳戶能通過這個請求。
接下來要介紹存放 git 儲存庫的平台,主要有三位候選人:Bitbucket、GitHub 和 Gitlab。
我們對平台的需求主要就私人儲存庫、pull requests 和 issues 等功能,如果考慮到未來可能要有自動佈署的功能,就需要 webhooks 這種功能。
以上的功能三個候選平台都具備,所以就直接看那個成本最低。
於是 Github 就掰了。
以我們目前的團隊人數來講,Bitbucket 和 Gitlab 都可以用,目前也看不出哪一個比較好。
由於我上一份工作用的是 Bitbucket,再加上下一章要介紹的工具跟這個平台搭配得還不錯,故我偏向使用 Bitbucket。
身為一名程序猿,使用 git 最好的工具當然就是 CLI。
但是使用輔助工具也是有好處:
接下來就實際操作並介紹這個軟體的特色,順便會跟 GitHub Desktop 比較。
一些小心得。
避免使用 git push -f 這條指令。
輸入指令:
git config --global core.autocrlf true
或是在 .git 所在位置新增 .gitattributes 檔:
* text=auto