开发过程中,我们需要了解当前每个改动。在版本控制系统中用来显示两个版本之间差别的操作,我们称之为“diff” 或者“patch”补丁
执行git add之后,提交的改动就是在暂存区
git diff 指工作目录下的改动,即工作目录树与暂存区之间的区别
git diff –cached 指暂存区与版本库最后一个版本的区别(用来查看执行git add后保存的改动)
git diff HEAD 指工作目录树(暂存区与非暂存区)与版本库最后一个版本的差别
比较两个分支: git diff branch1 branch2
如果我们想要把其中一个分支branch2的改动打包到分支branch1上,那就需要打补丁
git diff branch1 branch2 > diff.patch
然后将上面补丁应用到branch1上
git checkout branch1
git apply diff.patch
如果没有冲突,上面就可以将branch2上完整的改动移植到branch1了,但是操作过程中可以会有冲突,会提示下面错误