在git分支之间,特定文件夹的差异

162

与标题中相同,我想要在主分支和我创建的分支之间得到某个文件夹的差异文件。

2个回答

332
你可以使用
git diff master..yourbranch -- path/to/folder

1
你想要在哪些之间进行差异比较?最后一个? - jolivier
10
我收到了“fatal: bad revision 'master..develop_content'”错误提示。 - niklas
7
如果遇到该错误,请确保已经在本地检查出相应的分支。 - Karl Henselin
1
另外,git fetchgit diff master..origin/develop_content - Florian Wendelborn
1
现在您需要添加两个连字符来将分支与路径分开: git diff master..yourbranch -- path/to/folder - Doug DesCombaz
显示剩余7条评论

13

git diff 用于比较两个不同时间点的树(即源文件层次结构),因此它无法提取某个作者所做的更改。如果要查看用户提交的更改,则需要使用 git log

这解决了您的需求吗?

git log --author=jdoe oldbranch..newbranch -p -- path/to/subdirectory > myChangesInSubdirectory.patch

这将列出jdoe在两个提交之间所做的每个提交,将它们作为补丁而不是通常的提交摘要打印出来,仅限于在目标子目录中进行更改的提交,并将输出重定向到文件中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接