在创建 mobile-feature 分支以后,我们没有对 master 做新的提交 ... 所以合并的时候,是一个 fast-forward 合并 ... 如果说对 mobile-feature 分支做的新的提交,同时,我们又切换到 master 分支,去做了几次新的提交 ... master 这个分支跟在创建 mobile-feature 分支的时候已经不一样了 ..
这个时候再去合并 ... 就是一个真正的合并了 .. 这种合并有时可能会遇到冲突,我们需要先解决这些冲突,然后再去做合并。下面,我们来看一下这种合并 ...
切换到 mobile-feature 分支 ... 再去做一点修改 ... 添加一行 web app 的 meta 标签 ...
git checkout mobile-feature
<meta name="apple-mobile-web-app-capable" content="yes">
保存 .. 回到终端 ... 再去提交一下这个修改 .. 这里我们用一个快捷方式 ... 可以直接使用 git commit ,加上一个 a 参数 ... 这样就不需要先去使用 git add 添加修改了... git commit -a ... 后面还要再加上 m 参数 ... 指定一个描述信息 ...
git commit -am '为 index.html 添加 webapp meta 标签'
git log --oneline 查看一下日志..
再切换到 master 这个分支上 ...
git checkout master
然后项目下面去新建一个文本文件 ... 命名为 humans.txt ... 在这个文本文件里,可以说明下你的项目,比如项目的团队成员,感谢... 使用的技术等等 ... 回到终端 ... git status 查看一下状态..
git status
然后再去提交一下 ...
git add .
git commit -m '添加了 humans.txt'
查看一下所有分支的所有的提交 ... 在后面可以指定一下显示的日志的数量 .. 最后可以再加上一个 graph 选项 ..
git log --oneline --decorate --all -10 --graph
你会看到,在 mobile-feature 这个分支上做了一个提交 ... 同时,我们也对 master 这个分支做了提交 .. 这个时候,我们去合并分支的话,就不能做 fast-forward 合并了。需要去做一个新的合并提交 ...
git branch ,看一下当前所在的分支 ...
git merge mobile-feature
回车以后,会出现一个提示,让我们输入一点这个合并提交的描述 ... 默认是 Merge branch 'mobile-feature' .. 合并 mobile-feature 这个分支,你可以修改这个描述信息... 不想改的话,直接保存退出就行了。这里 # 号开头的是注释的内容,可以不用管 ...
再查看一下日志...
git log --oneline --decorate --all -10 --graph
在这里,你会看到这个新的合并的提交 .. 打开项目的 index.html 看一下 ... 当前我们是在 master 这个分支上 .. 这里也会有在 mobile-feature 分支上添加的 webapp 这行 meta 标签 ...
因为我们已经把这个分支合并到了 master 分支上了。