文章标题Git及Git Flow介绍

来源:互联网 发布:淘宝上的jbl是真的吗 编辑:程序博客网 时间:2024/05/20 22:35

Git介绍

为什么选择Git


    • 查看历史
    • 版本比较
  • 不需要联网
  • 分支很便宜
  • 灵活的发布模型
    • git flow

Git Flow

简介

git-flow

详细信息可以参考:A successful Git branching model
- master: 线上分支,和当前的线上版本一致
- develop: 开发分支,所以相对稳定的feature/bugfix。
- release: 发布分支,作为下个版本的发布候选。不再接受新的feature,只接受bugfix和其他与发布相关的修改(版本号,文档……)。
- feature-*: 功能分支,用于开发新的功能。
- hotfix: 修复分支,用于修复上线后发现的重大bug。
- tag: 所有线上版本的快照,用于存档。

安装

提示:如果你没有装过Homebrew,需要先安装。将以下命令贴在OS X的Terminal(终端)里,回车即可。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

安装`git-flow`

brew install git-flow

使用

查看帮助

git flowgit flow featuregit flow releasegit flow hotfix

初始化

mkdir helloworldcd helloworldgit initgit flow init# 一路回车(使用默认)

初始化完成后,默认分支为develop

创建一个feature分支

开始一个新的feature: cool_feature

git flow feature start cool_feature

这个操作会从develop分支创建出一个新的分支feature/cool_feature
之后就可以在feature/cool_feature下进行开发。

合并feature分支到develop

当完成cool_feature的开发以后,需要将其合并到develop分支。

git flow feature finish cool_feature

之后cool_feature分支会被合并至develop分支。合并成功之后cool_feature分支会被自动删除。

创建release分支

当新版本的feature开发基本结束以后,可以创建release分支。release分支不再接受新的feature,只做bugfix,修改发布文档等与发布相关的修改。
检查本地有没有未提交的,是否是干净的状态

git status

如果有的话,diff一下,看是否要提交

git diff

开始创建release分支

git flow release start v1.0.0

推送到服务器

git push origin release/v1.0.0

发布release分支

git flow release finish v1.0.0

这个操作会
1. 将release分支合并到master分支。
2. 创建tag
3. 将release分支合并到develop分支。
4. 删除release分支。

创建修复分支

git flow hotfix start issue-330

这个操作会从master分支创建hotfix分支。
之后,再该分支上进行fix等操作。

合并修复分支

git flow hotfix finish issue-330

这个操作会:
1. 将hotfix分支合并到master分支。
2. 创建tag
3. 将hotfix分支合并到develop分支。
4. 删除hotfix分支。

Git的日常使用

创建新的Git版本库

git init

查看本地branch

git branch 

查看本地所有branch(包括远程)

git branch -a

切换到具体的分支

git checkout branch-name

把本地的 branch-name 分支内容推送到服务器的 branch-name 分支

git push origin branch-name

更新,可以认为是 fetch 和 merge 的合集

git pull origin branch-name

拉取服务器分支到本地

git branch branch-name origion branch-name

删除本地分支

git branch -D branch-name

检查状态

git status

TBC

0 0
原创粉丝点击