`

Git学习系列(七)Bug和Feature分支管理详解

 
阅读更多

当咱们拿到一个新的bug或者feature(功能)时,首先应该想到通过分支来完成咱们的任务。因为在软件开发中,总是会根据客户的需求不断的添加新的feature进来,同时在做移动开发过程中bug也可以说是“常客”。通过前几章的内容,相信咱们很自然会想到创建一个新的branch(分支),在此分支上来修复bug或者实现feature,完成后,然后再merge(合并)到咱们的主分支上。

当咱们接到一个比如说是关于空指针的bug,而咱们手中的活(在b1分支上的bug)还没提交,预计要半天的时间,但新的bug必须在1小时内修完。这时咱们就要用到“储存现场”的功能git stash,这样咱们可以在修护新的bug之后再恢复现场来继续原先还没有提交的操作。下面咱们先修改之前的hellogit.txt文件的,修改内容为:

 

Hello Git
Git is so easy.

然后咱们仍然使用git status来观察一个该文本的状态:

 


可以看到红色部分提示,该文件已经被修改,同时该文件的状态仍处于工作区中,这是咱们接到一个新的bug,上级要求必须尽快修复,这时咱们先“保存现场”:


用git status查看工作区,就是干净的,除非有没有被Git管理的文件:


因此咱可以放心地创建分支来修复bug,现在假定咱们使用主分支(master)来修复咱们的这个新的bug,就从主分支上创建一个临时分支b2:


现在修复1.txt中的bug:


bug修好了,下面提交:


切换到主分支上在merge(合并):


然后删除临时分支b2:


好了,新的bug已经修复完,下面就可以继续回到咱们原来的分支(b1)上继续工作了:


咱们可以看到,工作区是干净的,之前咱们“储存的现场”哪去了呢?咱可以用git stash list来查看:


存储的工作现场还在,Git把stash内容存在某个地方了,但是需要恢复一下,有两个办法:

方法一:先用git stash apply来恢复现场,然后再用git stash drop来删除stash内容;

方法二:直接使用git statch pop来恢复并删除stash内容。

咱们为了方便,就直接用git stash pop了:


可以看到b1分支上hellogit.txt的状态又回来了,咱又可以继续在b1分支上干活了微笑

 

总结:(1)存储现场:git stash

(2)查看工作现场:git stach list

(3)恢复现场有两种:1,使用git stash apply 来恢复,然后再使用git stash drop来删除stash的内容。

2.使用git stash pop,来恢复并删除stash内容。

(4)如果要多次使用stash,恢复的时候先用git stash list查看,然后在指定你要恢复的内容:git stash applystash@{0}。

( 5) 如果要丢弃一个没有合并的分支,可以使用git branch -D branch-name。

 

分享到:
评论

相关推荐

    Git详解教程

    当下开源社区非常流行的版本管理系统Git的详细系列教程, 学完这个系列教程,Git就能熟练运用了。 Git详解之一 Git起步.doc Git详解之二 Git基础.doc Git详解之三 Git分支.doc Git详解之四 服务器上的Git.doc Git...

    git 删除分支和回滚的实例详解

    git 删除分支和回滚的实例详解 【git 删除本地分支】 git branch -D br 【git 删除远程分支】 git push origin :br (origin 后面有空格) git代码库回滚: 指的是将代码库某分支退回到以前的某个commit id 【本地...

    Git详解_Git详解

    Git 详解 : Git详解之一 Git起步 Git详解之二 Git基础 Git详解之三 Git分支 Git详解之四 服务器上的Git Git详解之五 分布式Git

    git分支管理策略

    git分支管理策略,git分支管理策略,git分支管理策略,git分支管理策略

    GIT分支管理

    GIT分支管理 远程分支 本地分支 GIT分支管理 远程分支 本地分支

    Git分支管理详解

    下面我们就来学习一下Git分支管理吧。我们先来说一个简单的案例吧,你们团队中有多个人再开发一下项目,一同事再开发一个新的功能,需要一周时间完成,他写了其中的30%还没有写完,如果他提交了这个版本,那么团队中...

    git版本管理使用规范-团队开发规范文档

    关于git项目管理分支说明。 2.1. master主干 命名:master 说明:发布分支 master为程序主干目录,开发新需求需从master打新分支,开发完成合并回master发测试包,测试完成需打新的tag包,tag包申请上线发布 2.2. ...

    分支管理规范-GIT分支流程开发规范

    该文档定义了分支管理规范-GIT分支流程开发规范。

    GIT分支代码统计

    GIT分支代码统计,安人员统计,分2步,第一步完成后可以手动修改统计的异常数据,然后执行第二部,得到更准确的统计数据。

    Go-git-bug嵌入在Git中的分布式bug跟踪器

    git-bug:嵌入在Git中的分布式bug跟踪器

    Git原理及范例详解

    Git 原理以及范例, 包括分支,合并。

    Git原理详解与实操指南.zip

    Git原理详解与实操指南\pdf\10 分支管理:掌握快速切换分支和新建分支能力-专栏. Git原理详解与实操指南\pdf\11 文件忽略进阶:忽略已加入版本控制器的文件-专栏. Git原理详解与实操指南\pdf\12 比较分支差异:展示...

    git分支版本管理.pdf

    企业git分支管理pdf

    Git中文学习手册 Git入门

    3 3 分支的管理 3 4 利用分支进行开发的工作流程 3 5 远程分支 3 6 分支的衍合 3 7 小结 4 服务器上的 Git 4 1 协议 4 2 在服务器上部署 Git 4 3 生成 SSH 公钥 4 4 架设服务器 4 5 公共访问 4 6 GitWeb ...

    git分支管理

    详细讲解git分支管理,适合于代码管理、项目管理等工作。

    Git分支和标签介绍

    介绍了Git分支和标签的原理及使用方法,Git分支内容包括Git原理、创建分支、合并分支、上传本地分支、跟踪远程分支等。Git标签内容包括查询Git标签、添加Git标签、为历史提交记录添加Git标签等。

    Git的使用文档--分支管理与冲突解决

    Git服务器从搭建到使用,很详细~这个是分支管理与冲突解决

    Git详解.pdf

    本文来自网站-OPEN经验库-Git详解: http://www.open-open.com/lib/view/open1328069609436.html 作者以自己对git的深刻理解,以图文的形式通俗易懂地介绍了git的使用方式和工作原理。从中可以看出作者对git的很深的...

Global site tag (gtag.js) - Google Analytics