git-flow 流程 备忘清单
關(guān)于
git-flow 是一個(gè) git 擴(kuò)展集,按 Vincent Driessen 的分支模型提供高層次的庫(kù)操作。?查看詳情
★ ★ ★
這個(gè)備忘清單展示了 git-flow 的基本操作和效果。
★ ★ ★
基礎(chǔ)建議
- Git flow 提供了極出色的命令幫忙以及輸出提示。請(qǐng)仔細(xì)閱讀并觀察發(fā)生了什么事情...
- macOS 程序?Sourcetree?是一個(gè)極出色的 git 界面客戶(hù)端,已經(jīng)提供了 git-flow 的支持。
- - Git-flow 是一個(gè)基于歸并的解決方案,它并沒(méi)有提供重置(rebase)特性分支的能力。
★ ★ ★
安裝
- 你需要有一個(gè)可以工作的 git 作為前提。
- Git flow 可以工作在 macOS, Linux 和 Windows之下
★ ★ ★
macOS
Homebrew
$ brew install git-flow-avhMacports
$ port install git-flow-avhLinux
$ apt-get install git-flowWindows (Cygwin)
$ wget -q -O - --no-check-certificate https://raw.github.com/petervanderdoes/gitflow-avh/develop/contrib/gitflow-installer.sh install stable | bash安裝 git-flow, 你需要 wget 和 util-linux。
更多的 git flow 安裝指引,請(qǐng)閱讀git flow wiki.
開(kāi)始
為了自定義你的項(xiàng)目,Git flow 需要初始化過(guò)程。
★ ★ ★
初始化
使用 git-flow,從初始化一個(gè)現(xiàn)有的 git 庫(kù)內(nèi)開(kāi)始:
git flow init你必須回答幾個(gè)關(guān)于分支的命名約定的問(wèn)題。
建議使用默認(rèn)值。
特性
- 為即將發(fā)布的版本開(kāi)發(fā)新功能特性。
- 這通常只存在開(kāi)發(fā)者的庫(kù)中。
★ ★ ★
增加新特性
新特性的開(kāi)發(fā)是基于 'develop' 分支的。
通過(guò)下面的命令開(kāi)始開(kāi)發(fā)新特性:
git flow feature start MYFEATURE這個(gè)操作創(chuàng)建了一個(gè)基于'develop'的特性分支,并切換到這個(gè)分支之下。
完成新特性
完成開(kāi)發(fā)新特性。這個(gè)動(dòng)作執(zhí)行下面的操作.
- 合并 MYFEATURE 分支到 'develop'
- 刪除這個(gè)新特性分支
- 切換回 'develop' 分支
發(fā)布新特性
你是否合作開(kāi)發(fā)一項(xiàng)新特性?
發(fā)布新特性分支到遠(yuǎn)程服務(wù)器,所以,其它用戶(hù)也可以使用這分支。
取得一個(gè)發(fā)布的新特性分支
取得其它用戶(hù)發(fā)布的新特性分支,并簽出遠(yuǎn)程的變更。
git flow feature pull origin MYFEATURE你可以使用?git flow feature track MYFEATURE跟蹤在origin上的特性分支。
作一個(gè)release版本
- 支持一個(gè)新的用于生產(chǎn)環(huán)境的發(fā)布版本。
- 允許修正小問(wèn)題,并為發(fā)布版本準(zhǔn)備元數(shù)據(jù)。
★ ★ ★
開(kāi)始準(zhǔn)備release版本
開(kāi)始準(zhǔn)備release版本,使用 git flow release 命令.
它從 'develop' 分支開(kāi)始創(chuàng)建一個(gè) release 分支。
?
git flow release start RELEASE [BASE]你可以選擇提供一個(gè)?[BASE]參數(shù),即提交記錄的 sha-1 hash 值,來(lái)開(kāi)啟動(dòng) release 分支. 這個(gè)提交記錄的 sha-1 hash 值必須是'develop' 分支下的。
★ ★ ★
創(chuàng)建 release 分支之后立即發(fā)布允許其它用戶(hù)向這個(gè) release 分支提交內(nèi)容是個(gè)明智的做法。命令十分類(lèi)似發(fā)布新特性:
git flow release publish RELEASE(你可以通過(guò)?
git flow release track RELEASE?命令簽出 release 版本的遠(yuǎn)程變更)
完成 release 版本
完成 release 版本是一個(gè)大 git 分支操作。它執(zhí)行下面幾個(gè)動(dòng)作:
- 歸并 release 分支到 'master' 分支
- 用 release 分支名打 Tag
- 歸并 release 分支到 'develop'
- 移除 release 分支
緊急修復(fù)
- 緊急修復(fù)來(lái)自這樣的需求:生產(chǎn)環(huán)境的版本處于一個(gè)不預(yù)期狀態(tài),需要立即修正。
- ?有可能是需要修正 master 分支上某個(gè) TAG 標(biāo)記的生產(chǎn)版本。
★ ★ ★
開(kāi)始 git flow 緊急修復(fù)
像其它 git flow 命令一樣, 緊急修復(fù)分支開(kāi)始自:
git flow hotfix start VERSION [BASENAME]VERSION 參數(shù)標(biāo)記著修正版本。你可以從 [BASENAME]開(kāi)始,[BASENAME]為finish release時(shí)填寫(xiě)的版本號(hào)
完成緊急修復(fù)
當(dāng)完成緊急修復(fù)分支,代碼歸并回 develop 和 master 分支。相應(yīng)地,master 分支打上修正版本的 TAG。
git flow hotfix finish VERSION命令
from:https://danielkummer.github.io/git-flow-cheatsheet/index.zh_CN.html?
總結(jié)
以上是生活随笔為你收集整理的git-flow 流程 备忘清单的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: git - 简明指南
- 下一篇: 如何正确使用Git Flow 流程