最近一直使用Git在管理代码,但是的确不规范,今天开始恶补Git常用命令。实际今天的任务是需要从master牵出一条branch。心想着这个简单只补一下创建分支以及merge的这边的命令就可以了,于是乎就遇到了下面一件事儿...
一、情景再现
项目A只有一个分支master,在原有master的代码上分出一条branch,名字叫做develop,命令如下:
git branch develop
切换到分支develop,增加一个testfile文件
git checkout develop touch testfile git add testfile git commit -m "Add test file on develop branch"
切换到分支master,合并develop代码到master
git checkout master git merge develop
好了,在master里面也已经有了testfile。这个时候将testfile删除掉,想当然的以为我再merge一下develop是不是那个testfile还会出现。
rm -f testfile git add . git commit -m " Remove testfile on master branch" git merge develop
结果,显示已经更新到最新,并没有把testfile再一次更新进来。
二、拨云见日
经过寻找发现一份很好的Git教程:
https://github.com/geeeeeeeeek/git-recipes/wiki
通读一遍,茅塞顿开。
因为:合并是Git将被fork的历史放回到一起的方式。下面进行图解:
最后,再一次感谢大神。