小明在愉快的敲代码
vim ok
他在ok里敲了simachanping
git commit -am "commit first version by xiaoming"
然后这时他接到了产品的电话,说有一个新需求要做名字是iss53,小明就打算新建一个iss53分支来实现需求
git checkout -b iss53
vim ok
他在ok里面敲了simaceshi
git commit -am "solve iss53 ing"
现在在iss53分支里ok的内容是
simachanping
simaceshi
此时小明正愉快的在iss53实现新需求,很不巧这时测试过来说,你之前的master版本有一个bug,要你去解决。于是你就回到master分支,新建一个hotfix分支,解决bug。
git checkout master
git checkout -b hotfix
vim ok
他在ok里面敲了 simalaoban
git commit -am "solve hotfix"
此时小明已经解决了hotfix这个bug,所以可以合并到master分支
git checkout master
git merge hotfix
git branch -d hotfix
到这里hotfix就已经解决了
此时在master的ok里内容是
simachanping
simalaoban
然而他想起来还有一个iss53未解决完呢
git checkout iss53
vim ok
他在ok里面敲了simagongsi
git commit -am "solve iss53"
此时iss53分支ok里的内容是
simachanping
simaceshi
simagongsi
回到master
git checkout master
此时master分支ok的内容是
simachanping
simalaoban
合并iss53
git merge iss53
因为这两个分支的第二行不一样,所以产生了冲突,手动进入文件,修改
vim ok
修改成
simachanping
simaceshi&simalaoban
simagongsi
然后在git add把冲突标记为已解决的状态
git commit -m 'solve iss53 and hotfix"
git push origin master