概念
当你在做一个项目的时候,你要实现某一种功能,需要可能两周的时间,但是别人也要用这个项目。这个时候,你只完成了一半,没办法合并,但是别人又要继续使用。这时候,就需要建立分支,在建立分支的时候,你在用的同时,别人也可用。
创建合并分支
dev可以是别的名字
#查看当前分支
git branch
#创建分支
git branch dev
#切换分支
git checkout dev
#创建并切换到一个分支里面
git checkout -b dev
#查看记录
git log --pretty=oneline
#合并记录,出现fast-forward就是快速合并。
git merge dev
#合并之后,就可以删除dev分支,
git checkout -d dev
解决冲突
在不同分支上,都编辑了同一个文件,这时候合并,会出现冲突。
eg:master上你在文件code中加入一行,又创建了一个新的分支dev,在这个分支上你也在文件code上添加一行,这个时候你想合并分支,就会出现冲突。
解决方法:手动进行合并,在code文件中。然后在进行add和commit操作
#查看分支图
git log --graph --pretty=oneline
分支管理策略
有一种情况,你在dev分支上创建一个新文件,而在master分支上对原有的文件添加一行,这个时候你使用git merge dev,是可以合并的,那是因为你没有对同一个文件进行操作。这是时候,git不会使用快速合并,git会帮你合并之后在提交,此时会有一个弹框,要求你输入提交的信息,方便之后查阅,为什么合并了。
还有一种情况,当master上面没有记录,而dev上有记录,这个时候合并是没有冲突的并且是快速合并。但是呢,我们为了保存这个的合并记录,我们要手动关掉快速合并。
git merge --no --ff -m '说明信息' dev
bug分支
软件开发中,遇到bug就像是家常便饭。当遇到bug的时候,每一个bug都要用过临时的分支来修复,修复后在合并分支,然后将临时分支删除。
当你正在做某项任务的时候,临时有个紧急的任务,修复bug,但是你的代码没有写完,不能提交,可以通过下面的命令进行存储,等你修复完成之后,可以继续做。
#存储工作现场
git stash
#查看存储工作现场
git stash list
#恢复存储工作现场
git stash pop
网友评论