如何在修改bug时切换分支保留修改又不提交

使用git的时候,我们往往使用branch解决任务切换问题,例如,我们往往会建一个自己的分支去修改和调试代码, 如果别人或者自己发现原有的分支上有个不得不修改的bug,我们往往会把完成一半的代码 commit提交到本地仓库,然后切换分支去修改bug,改好之后再切换回来。这样的话往往log上会有大量不必要的记录。其实如果我们不想提交完成一半或者不完善的代码,但是却不得不去修改一个紧急Bug,那么使用’git stash’就可以将你当前未提交到本地(和服务器)的代码推入到Git的栈中,这时候你的工作区间和上一次提交的内容是完全一样的,所以你可以放心的修 Bug,等到修完Bug,提交到服务器上后,再使用’git stash apply’将以前一半的工作应用回来。也许有的人会说,那我可不可以多次将未提交的代码压入到栈中?答案是可以的。当你多次使用’git stash’命令后,你的栈里将充满了未提交的代码,这时候你会对将哪个版本应用回来有些困惑,’git stash list’命令可以将当前的Git栈信息打印出来,你只需要将找到对应的版本号,例如使用’git stash apply [email protected]{1}’就可以将你指定版本号为[email protected]{1}的工作取出来,当你将所有的栈都应用回来的时候,可以使用’git stash clear’来将栈清空。 
在这里顺便提下git format-patch -n , n是具体某个数字, 例如 ‘git format-patch -1’ 这时便会根据log生成一个对应的补丁,如果 ‘git format-patch -2’ 那么便会生成2个补丁,当然前提是你的log上有至少有两个记录。

转载:http://blog.csdn.net/liangxiao19920731/article/details/50498786

时间: 2024-12-05 03:47:08

如何在修改bug时切换分支保留修改又不提交的相关文章

git切换到别的分支,要暂时保存当前分支的修改(不想进行add 和commit)的方法 git stash

git 切换分支时会把未add或未commit的内容带过去, 这一点值得注意. 为什么呢? 因为未add的内容不属于任何一个分支, 未commit的内容也不属于任何一个分支. 也就是说,对于所有分支而言, 工作区和暂存区是公共的. 要想在分支间切换, 又不想又上述影响, 怎么办呢? git切换分支保存修改的代码的方法 最近在一个原有的项目上做一次非常大的改版,底层的数据库做了很大的变化,跟现在的版本无法兼容.现在的工作除了开发最新的版本之外还要对原来的版本做例行的维护,修修补补.于是有了在两个分

使用git提交代码--在不切换分支的情况下向不同的分支提交代码

我们都会提交代码,尤其是当项目的分支比较多的时候,我们就会向不同的分支提交代码,这时候,如果来来回回切换分支修改了之后在提交,那么会很费时间的,一天也改不了几个bug. 在一个分支上修改了代码,先向一个分支进行提交  比如;本地B-1分支,提交合并到B分支上面去 然后关键一步:选择Cherry-pick  意思是  炼选 最后,将自己本次修改的代码选择另外一个目标分支进行提交 依次类推,这样就比较方便了 原文地址:https://www.cnblogs.com/dongyaotou/p/1212

GIT 如何在不提交Commit的情况下切换分支

最近遇到一个问题,事情是这样子的,刚刚接到客户说他的项目有问题,于是就打开本地的源码查看经过排查确定了问题,于是就开始进行修正工作 将问题修复好准备提交到git的时候发现当前的分支是不对的,但问题是我已经在当前分支了作了大量修改,如果要切换分支则必须先要将修改过的文件先提交 那么现在问题来了:如何在不提交commit的情况下来切换分支呢? 最后通过查看Pro Git文档了解到Git中有一个stash功能可以实现 6.3 储藏(Stashing) 来源: <http://git.oschina.n

修改完文件,想直接切换分支,怎么办???

一般切换分支需要先提交,如果本地工作还不完善,但必须切换到另一分支修BUG,你可以考虑使用下面的Git命令: git stash # 暂存 git stash list # 列所有stash git stash apply # 恢复暂存的内容 git stash drop # 删除暂存区 git stash pop # 恢复暂存的内容 说句自己的理解,其实也没必要执行上面这些命令:假如你是想保存对文件的修改,你完全可以提交保存切换分支,反正又没push到线上,改完另外一个分支,再切换回来就行了:

svn branch and merge(svn切换分支和合并)详解

下文的实践主要是参考了TortoiseSVN的帮助文档和Subversion的在线文档,Subversion的在线文档:http://svnbook.red-bean.com/en/1.5/svn-book.html 先说说什么是branch.按照Subversion的说法,一个branch是某个development line(通常是主线也即trunk)的一个拷贝,见下图: branch存在的意义在于,在不干扰trunk的情况下,和trunk并行开发,待开发结束后合并回trunk中,在bran

修改BUG心得

修改BUG心得 分类: 项目管理/CMMI2013-01-14 22:06 845人阅读 评论(0) 收藏 举报 目录(?)[-] 一 二 三 一. 1.写第一版时就杜绝这些的发生. 2.思维要开阔, 3.修改BUG,写代码的人都很厉害,不管是写界面还是底层.不要以人做的模块的难易来断定人. 二. 今天让项目经理找到些bug,但都是无关紧要的,最主要是因为在作页面的时候,业务逻辑不是很清晰,需求描述的不好,所以我自己做起来也有麻烦,当然,不是我没错,只是以后我做项目经理,对以后自己下属的要求,就

SVN创建分支/合并分支/切换分支

SVN创建分支/合并分支/切换分支 转载自:http://www.cnblogs.com/andy2simple/p/5386256.html 在建立项目版本库时,可首先建好项目文件夹,并在其中建立trunk, branches, tags三个空的子目录.这样在trunk中开始进行开发 trunk是主分支,是日常开发进行的地方. branches是分支.一些阶段性的release版本,这些版本是可以继续进行开发和维护的,则放在branches目录中.又比如为不同用户客制化的版本,也可以放在分支中

Git学习笔记(6)——Bug和Feature分支

本文主要记录了通过Git来调试Bug和添加新的功能,也就是Bug分支和Feature分支,以及分支的推送. Bug分支 通过Git,我们可以为每个Bug建立一个分支,Bug修复后,合并分支,然后将临时分支删除. 当有Bug的时候,想创建一个分支bug-101来修复它,如果,当前正在dev上进行的工作还没有完成,不能提交,而且,我们必须马上解决bug,这时,我们借助Git提供的stash功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作. [email protected]:~/joe

一个能管理快三源码出售多个Git仓库,又能快速切换分支的Gradle插件

背景和问题快三源码出售论坛:haozbbs.com Q1446595067项目组件化过程中,会根据App框架.业务情况划分出各个独立的模块.通常把各个模块的代码管理分开,各自有独立Git仓库. 这样有个好处是可以按需clone部分模块的代码,再组装成一个可运行的工程.比如,业务组的同学开发某个Feature的时候,只需clone业务层部分模块的代码,不需要中间层.基础层方面的模块代码(业务层模块引用中间层.基础层模块打包上传Maven的aar). 但在实际操作中产生的问题: 创建创建工程初期,怎