通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息. 如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit, 这样,从分支历史上就可以看出分支信息. 下面我们实战一下--no-ff方式的git merge -- 首先,仍然创建并切换dev分支: $ git checkout -b dev --- 修改readme.txt文件,并提交一个新的commit: ---- 现在,我们切换回master: -…
git merge --no-ff -m "msg" x-branch:禁用Fast forward的普通合并 通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息(即:原来这个分支的做了什么在log中体现不出来). 为了保留原来的分支,即:普通合并,这样的话,merge的时候会提交一个commit,就会输入-m参数,在log中体现的也更清晰! 前面我们解决冲突的时候发现,我们解决冲突之后,即使 是在master主分支上合并dev…
创建dev分支,并且修改readme.txt的内容,然后提交 使用git merge --no-ff -m "说明内容" 分支名称合并分支 使用git log --graph --pretty=oneline --abbrev-commit查看分支情况 不使用fast forward的分支情况示意图如下,此时可以看出分支信息!…
sql服务器第5级事务日志管理的阶梯:完全恢复模式下的日志管理 原文链接http://www.sqlservercentral.com/articles/Stairway+Series/73785/ 作者 Tony Davis, 2012/01/27   系列 本文是阶梯系列的一部分:sql服务器中事务日志管理的楼梯   当事情进展顺利时,没有必要特别注意事务日志的工作或工作方式.你只需要确信每个数据库都有正确的备份系统.当出现问题时,对事务日志的理解对于采取纠正行动非常重要,特别是当需要立即对…
本来第三课想记录一下远程仓库的创建与克隆0.0但是想了想还是不写了. 这里写一下分支管理中的创建与合并. Git速成学习笔记整理于廖雪峰老师的官网网站:https://www.liaoxuefeng.com/ 首先在版本提交的过程中,每一次提交,Git都会将他们传承一条时间线,这个时间线就是一个分支. 截止目前,我们只有一条时间线,在Git中,这个分支就叫做主分支master.HEAD严格意义来讲不是 指提交,而是指向master,master才是指向提交的.所以,HEAD指向的就是当前的分支.…
添加一个分支, 并且换到该分支: git checkout -b add-text 然后我再index.html里面添加点文字, 并commit. 然后再修改README.md, 添加文字, commit. 现在在 add-text这个分支上, 有两个commit, 看下log: 然后把这个分支合并到master分支. 首先切换到master分支, 然后再进行git merge, 但是这一次, 我想把我这个分支的过程留下痕迹, 所以要禁用fast-forward 合并: git merge 要被…
分支在实际中有什么用呢? 假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了. 如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险. 现在有了分支,就不用怕了. 你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作, 而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作. 创建与合并分支 在版本回退里,你已经知道,每次提交…
下面是对git的各种使用及命令的基础使用,来自廖雪峰老师的git教程,这个收录下,作为git的使用总结. github上面地址为:https://github.com/Zhangguoliu/learn-git/blob/master/learngit-note.md ++++++++++++++++++++++++++++++++++++++++++++++++++ Git学习笔记 目录 Git简介 安装Git 创建版本库||使用vi编辑器||把文件添加到版本库||查看工作区当前状态 时光穿梭…
git的fast-forward在之前的文章有介绍过,但是介绍的不细: http://www.cnblogs.com/charlesblc/p/5953066.html fast-forward方式就是当条件允许的时候,git直接把HEAD指针指向合并分支的头,完成合并.属于“快进方式”,不过这种情况如果删除分支,则会丢失分支信息.因为在这个过程中没有创建commit squash 是用来把一些不必要commit进行压缩,比如说,你的feature在开发的时候写的commit很乱,那么我们合并的…
Git 很是强大,在体验过rebase的华丽之后,再次发现之前在TFS上遇到的问题一下都有解了.但也印证了Git深入并非易事.这篇就谈下一个容易迷糊的概念:Fast forward. Fast-Forward 当前分支合并到另一分支时,如果没有分歧解决,就会直接移动文件指针.这个过程叫做fastforward. 举例来说,开发一直在master分支进行,但忽然有一个新的想法,于是新建了一个develop的分支,并在其上进行一系列提交,完成时,回到 master分支,此时,master分支在创建d…