Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Git Flow Tutorial

Download as pdf
Download as pdf
You are on page 1of 29
At a glance
Powered by AI
The document talks about git-flow workflow and branching model for managing software development projects using git.

Git-flow is a branching model and workflow that helps manage feature branches, release branches and hotfix branches in git.

The main branches in git-flow are master, develop and feature/release/hotfix branches.

Git-ow

index

why? install git-ow?

Software Development Life-Cycle

Planning

Development

Testing

Release

Software Development Life-Cycle

Target Start

solo?

Target Start

http://www.mongri.co.kr/xe/319

we are the team

Target Start

http://www.mongri.co.kr/xe/319

go to hell


 



Target

Start



go to hell


 



Target

Start



result

dirty no plan no maintenance

feature branches

develop

release branches

hotfixes

master

Time

Tag 0.1

Feature for future release

Major featurefor next release Incorporate bugfixin develop

Severebug fixedfor production : hotfix0.2

Tag 0.2

Startof release branchfor Fromthispoint on,nextrelease meansthe releaseafter1.0

1.0

Only bugfixes!

Bugfixes fromrel. branchmay be continuously mergedback intodevelop

Tag 1.0

result
beautiful have plan efciently maintenance more

HeroChat HeroChat H3 Site develop Server Client UI

release branches

hotxes

master

Time



Feature v0.1.0

 

Release v0.1.0 Develop v0.1.0  Develop Release v0.2.0

 v0.3.0

emergency
Problem

Planning

Development

Testing

Release

HeroChat Server

HeroChat Client

H3 Site UI

develop

release branches

hotxes

master

Time



v0.1.0 

 

Release v0.1.1

v0.1.1hotfix 

install

$ brew install git git clone https://github.com/nvie/gitow.git

Git-ow?
shell script for git smart branching strategy for git Vincent Driessens branching model source : https://github.com/nvie/gitow

git init - initialization


$ mkdir git-ow-edu $ cd git-ow-edu ~/path/to/git-ow-edu$ git init Initialized empty Git repository in /path/to/git-ow-edu/.git/

git ow help
usage: git ow <subcommand> Available subcommands are: init Initialize a new git repo with support for the branching model. feature Manage your feature branches. release Manage your release branches. hotx Manage your hotx branches. support Manage your support branches. version Shows version information. Try 'git ow <subcommand> help' for details.

git ow init
$ mkdir git-ow-edu $ cd git-ow-edu ~/path/to/git-ow-edu$ git ow init
Initialized empty Git repository in /path/to/git-ow-edu/.git/ No branches exist yet. Base branches must be created now. Branch name for production releases: [master] Branch name for "next release" development: [develop] How to name your supporting branch prexes? Feature branches? [feature/] Release branches? [release/] Hotx branches? [hotx/] Support branches? [support/] Version tag prex? []

git ow feature

base : develop ~/path/to/git-ow-edu$ git ow feature start <name> [<base>] ~/path/to/git-ow-edu$ git ow feature nish <name>

git ow feature help


usage: git ow feature [list] [-v] git ow feature start [-F] <name> [<base>] git ow feature nish [-rFk] <name|nameprex> git ow feature publish <name> git ow feature track <name> git ow feature diff [<name|nameprex>] git ow feature rebase [-i] [<name|nameprex>] git ow feature checkout [<name|nameprex>] git ow feature pull <remote> [<name>]

git ow release

base : develop ~/path/to/git-ow-edu$ git ow release start <release> [<base>] ~/path/to/git-ow-edu$ git ow release nish <release>

git ow release help

usage: git ow release [list] [-v] git ow release start [-F] <version> git ow release nish [-Fsumpk] <version> git ow release publish <name> git ow release track <name>

git ow hotx

base : master ~/path/to/git-ow-edu$ git ow hotx start <release> [<base>] ~/path/to/git-ow-edu$ git ow hotx nish <release>

git ow hotx help

usage: git ow hotx [list] [-v] git ow hotx start [-F] <version> [<base>] git ow hotx nish [-Fsumpk] <version>

git ow support

Experimental !

references

http://jeffkreeftmeijer.com/2010/why-arent-you-using-git-ow/ https://github.com/nvie/gitow

other tools
git-extra : high-level utilities for git
https://github.com/rhiokim/git-extras

gitlab : free Project/Repository management application


https:/github.com/sitaramc/gitolite

gitolite : hosting Git repositories easily and securely


https:/github.com/sitaramc/gitolite

git-diff-grep : Run grep across git diffs history


https://github.com/oscardelben/git-diff-grep

gerrit : Web based code review system


http://code.google.com/p/gerrit/

Start

You might also like