我从master做分支做几次提交然后我添加了很多提交到master然后如何显示分支的HEAD和我分支的提交之间的文件差异。
当我在github上创建pull请求时,我需要的是同样的差异,但是从命令行和分支创建。
问题是当我运行git branch
时,我不知道哪个提交是HEAD。
答案 0 :(得分:1)
我没有需要比较的提交。我需要从分支中获取提交,当我运行git branch时,提交是HEAD。
当您运行git branch时,您需要git merge-base
找到最新的共同祖先,即“提交是HEAD”。
但要找到差异,你可以使用这种形式:
<强>
git diff [--options] <commit>...commit> [--] [<path>...]
强>此表单用于查看包含和第二个分支的分支上的更改 ,从两者的共同祖先开始。 “git diff A ... B“相当于”git diff $(git-merge-base A B)B“。你可以 省略任何一个,与使用HEAD具有相同的效果 代替。