创建develop分支

  1. git branch develop
  2. git push -u origin develop

开始新feature开发

  1. git checkout -b feature/name_v1.0.0 develop   # 基于develop分支创建feature功能分支
  2. git push -u origin 分支名称   #将feature分支推送到远程 [可选,取决于这个需求是否需要其他人参与协作]  对应 git flow publish feature_name 命令  拉取 git flow feature track feature_name

完成feature

  1. git pull origin develop && git checkout develop #拉取远端最新develop分支并切换 [为了后面的合并feature工作]
  2. git merge --no-ff feature分支的名称 # develop 合并 feature
  3. git push origin develop #提交feature的更改到develop分支
  4. git branch -d 分支名称 #删除本地分支
  5. git push origin --delete 分支名称 #删除远程分支 [如果远程存在]

创建release分支

  1. git checkout -b 分支名称 develop  #从develop分支创建 release 分支

完成release分支

  1. git pull origin develop && git checkout develop && git merge --no-ff 分支名称 && git push  origin develop #合并 release 分支 到 develop
  2. git pull origin master && git checkout master   &&  git merge --no-ff 分支名称 && git push  origin master  #合并 release 分支到 master
  3. git branch -d 分支名称 && git push origin --delete 远程分支名称 #删除本地和远程 release 分支

创建hotfix分支

  1.  git checkout -b 分支名称 master

完成hotfix分支

  1. git pull origin develop && git checkout develop && git merge --no-ff 分支名称 && git push  origin develop #合并 hotfix 分支到 master
  2. git pull origin master && git checkout master && git merge --no-ff 分支名称 && git push origin master #合并 hotfix 分支到 maste
  3. git branch -d 分支名称 #删除hotfix分支
  4. git tag -a v1.4 -m 'my version 1.4'  #给版本打tag
  5. git push --tags #提交所有包括tag

 原则:确保不上的代码不会流入到develop或者master就好了 , 可以存在于feature/* , release/* , hotfix/* 这三个分支的主场中 [ 因为这三个分支都是辅助分支,独立。而主线分支 develop与master会影响到所有人的代码开发版本问题 ], 这样预发环境与生产环境都采用master分支也完全ok

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1.删除本地分支       git branch -d branch_name

2.删除远程分支       git branch -r -d origin/branch-name && git push origin :branch-name

3.如果远程新建了一个分支本地没有该分支       git checkout --track origin/branch_name

4.如果本地新建了一个分支 branch_name但是在远程没有         git push --set-upstream origin branch_name