Last active
July 2, 2024 13:51
-
-
Save JakeGinnivan/cf053d7f5d336ae9f7bb to your computer and use it in GitHub Desktop.
Revisions
-
JakeGinnivan revised this gist
Jul 20, 2015 . 1 changed file with 148 additions and 18 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,24 +1,154 @@ @startuml participant "pull/2/merge" as feature participant develop participant "release/2.0.0" as majorRelease participant "release/1.3.0" as minorRelease participant master activate develop activate master master -> master: commit master -> master: tag 1.2.0 == Feature branch == note over feature, master Feature branches are likely pushed to a fork, then submit a PR.pull/2/merge is what your build server sees when you submit a PR with #2 end note hnote over develop develop end note master -> develop: branch from master develop -> develop: commit note over develop #D3D3D3: 1.3.0-unstable.1 hnote over feature pull/2/merge end note develop -> feature: branch from develop activate feature note over feature #D3D3D3: 1.3.0-PullRequest.2+1 feature -> feature: commit note over feature #D3D3D3: 1.3.0-PullRequest.2+2 feature -> develop: merge destroy feature note over feature Feature branches/pr's should be deleted once merged end note note over develop #D3D3D3: 1.3.0-unstable.3 == Hotfix release == note over feature, master Hotfix branches are short lived branches which allow you to do SemVer patch releases end note create participant "hotfix/1.2.1" as hotfix master -> hotfix: branch from master activate hotfix hotfix -> hotfix: commit hotfix -> hotfix: commit note over hotfix #D3D3D3: 1.2.1-beta.1+2 hotfix -> hotfix: tag 1.2.1-beta.1 note over hotfix #D3D3D3: 1.2.1-beta.1 hotfix -> master: merge destroy hotfix note over hotfix Hotfix branches are deleted once merged end note master -> master: tag 1.2.1 == Minor Release == note over feature, master In GitFlow the release branch is taken from develop end note hnote over minorRelease release/1.3.0 end note develop -> minorRelease: branch from develop activate minorRelease note over minorRelease #D3D3D3: 1.3.0-beta.1+0 develop -> develop: commit note over develop #D3D3D3: 1.3.0-unstable.4 minorRelease -> minorRelease: commit note over minorRelease #D3D3D3: 1.3.0-beta.1+1 minorRelease -> minorRelease: tag 1.3.0-beta.1 note over minorRelease #D3D3D3: 1.3.0-beta.1 minorRelease -> minorRelease: commit note over minorRelease #D3D3D3: 1.3.0-beta.2+2 minorRelease -> master: merge note over master #D3D3D3: 1.3.0+0 master -> master: tag 1.3.0 note over master #D3D3D3: 1.3.0 minorRelease -> develop: merge note over minorRelease Release branches are deleted once merged end note note over develop #D3D3D3: 1.4.0-unstable.2 == Major Release == hnote over majorRelease release/2.0.0 end note develop -> majorRelease: branch from develop note over majorRelease #D3D3D3: 2.0.0-beta.1+0 develop -> develop: commit note over develop #D3D3D3: 1.4.0-unstable.3 majorRelease -> majorRelease: commit note over majorRelease #D3D3D3: 2.0.0-beta.1+1 majorRelease -> majorRelease: tag 2.0.0-beta.1 note over majorRelease #D3D3D3: 2.0.0-beta.1 majorRelease -> majorRelease: commit note over majorRelease #D3D3D3: 2.0.0-beta.2+2 majorRelease -> master: merge note over master #D3D3D3: 2.0.0+0 master -> master: tag 2.0.0 note over master #D3D3D3: 2.0.0 majorRelease -> develop: merge note over majorRelease Release branches are deleted once merged end note note over develop #D3D3D3: 2.1.0-unstable.2 == Support Branches == note over feature, hotfix Support branches allow you to create stable releases of a previous major or minor release. A support branch is essentially master for an old release end note create participant "support/1.3.0" as support master -> support: branch from tag (1.3.0) activate support support -> support: commit note over support #D3D3D3: 1.3.0+1 create participant "hotfix/1.3.1" as hotfix2 support -> hotfix2: branch from support/1.3.0 activate hotfix2 hotfix2 -> hotfix2: commit hotfix2 -> hotfix2: commit note over hotfix2 #D3D3D3: 1.3.1-beta.1+3 hotfix2 -> hotfix2: tag 1.3.1-beta.1 note over hotfix2 #D3D3D3: 1.3.1-beta.1 hotfix2 -> support: merge destroy hotfix2 note over hotfix2 Hotfix branches are deleted once merged end note note over support #D3D3D3: 1.3.1+4 support -> support: tag 1.3.1 note over support #D3D3D3: 1.3.1 == Minor release via support == note over feature, hotfix2 Much like hotfixing an old version you can release minor versions of old releases using support branches end note create participant "release/1.4.0" as supportRelease support -> supportRelease: branch from support/1.3.0 activate supportRelease supportRelease -> supportRelease: commit supportRelease -> supportRelease: commit note over supportRelease #D3D3D3: 1.4.0-beta.1+2 supportRelease -> supportRelease: tag 1.4.0-beta.1 note over supportRelease #D3D3D3: 1.4.0-beta.1 supportRelease -> support: merge destroy supportRelease note over supportRelease Release branches are deleted once merged end note note over support #D3D3D3: 1.4.0+0 support -> support: tag 1.4.0 note over support #D3D3D3: 1.4.0 @enduml -
JakeGinnivan revised this gist
Jul 20, 2015 . 1 changed file with 3 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,3 +1,4 @@ @startuml participant feature as "feature/abc" participant develop participant release as "release-2.0.0" @@ -19,4 +20,5 @@ note over release: 2.0.0-beta.2 release -> master: merge and tag master 2.0.0 note over master: 2.0.0 release -> develop: merge note over develop: 2.0.0-unstable.1 @enduml -
JakeGinnivan created this gist
Jul 20, 2015 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,22 @@ participant feature as "feature/abc" participant develop participant release as "release-2.0.0" master -> master: tag 1.2.0 master -> develop: merge develop -> feature: branch feature -> feature: commit note over feature: 1.2.0-PullRequest.2 feature -> feature: commit note over feature: 1.2.0-PullRequest.2 feature -> develop: merge note over develop: 1.2.0-unstable.2 develop -> release: branch note over release: 2.0.0-beta.1 develop -> develop: commit note over develop: 1.2.0-unstable.3 release -> release: commit note over release: 2.0.0-beta.2 release -> master: merge and tag master 2.0.0 note over master: 2.0.0 release -> develop: merge note over develop: 2.0.0-unstable.1