一:git branch b1 创建分支
git checkout b1 切换分支
git branch -b branch 创建并切换分支
git branch -d b1 删除分支
二:git stash
比如你正在开发新功能,突然有个bug需要你要去修复(每个bug要建立一个临时分支去修复),但是你手头的工作还没做完,你的文件正在改还没有改完不能提交,你git status 会显示报错,这时候就可以用git stash这个命令把你现在的工作现场给封存起来,再git status就不会报错 ,然后你就先切换到出现bug的分支上master上新建一个分支b1并切换它在b1上去修复bug。等你修改完bug 切换到出现bug的分支master上合并b1 ,git merge --no-ff -m 'sfa' b1 这个命令是禁止使用快速合并方式 而去使用合并提交方式,这样的话 你git log会查看到你的这次提交记录不然就看不到修改完bug 合并提交之后,删除b1分支,然后你就要接着去开发之前的封存的现场,你要先切换到这个分支上然后用git stash list 去查看存储 然后 git stash pop 删除存储 你之前的文件就可以接着去修改了。
三:git 切换分支--》会将此分支下所有的文件显示在本地 将别的分支同名的文件覆盖
四:分支冲突:合并冲突发生时要先找到冲突在哪个文件里面然后手动编辑文件留那些 弃哪些 由你决定 然后编辑完之后 再add commit 合并结束 再删除临时分支
五:快速合并:分支合并时候git会使用fast_forward模式,但是有些时候快速合并没有成功但是也没有发生冲突,这时候合并之后会在提交一次Merge made by the 'recursive' strategy 会有这样的提示
条件:dev 分支有新文件而master分支没有会使用快速合并模式 如果这时master的文件有改动那就不能用快速合并模式而是用第二种合并模式提交,但是一旦删除分支 那么log就没有此次记录
六:比如你正在本地改文件 还没有add和commit 无论你切换到哪个分支都会有红色提示你未添加文件,add和commit 执行完了切换到别的分支才不会显示这个文件 git stash 暂时储存就是这个原理
七:git show log索引 git 提交方式 fast_ford