可能重复:
Using Git how do I find modified files between local and remote
如何在git中查看传入的提交?或者更好的是,看看我刚才git fetch
/git pull
编辑的内容?
编辑:澄清这个问题:有人告诉我,为了获得一些修复,我应该从他们的存储库中提取。我的目标是在我接受它们之前看看它们的变化是什么。git pull
会自动合并,这不是我想要的。git fetch
将在不合并的情况下获取它们,但我不确定如何查看我刚刚拉入的内容。原始措辞的原因是我通常使用Mercurial,其中的命令应该是hg incoming <repo name here>
-a命令,而git似乎缺乏类似的命令。
发布于 2009-08-26 00:30:09
incoming
在git中并不是一个直接的映射,因为你可以(我经常这样做)有多个仓库,而且每个仓库都有多个分支。
如果有hg的传入命令的等价物,它可能是这样的:
git fetch && git log ..origin/master
也就是说,“从上游获取所有内容,然后将我当前的分支与上游主分支进行比较。”
类似地,传出是这样的:
git fetch && git log origin/master..
在实践中,我只是手动输入它们(即使我为其中一个创建了别名),因为让许多本地分支跟踪和被许多远程分支跟踪很容易,并且保持它们在一起没有问题。
发布于 2009-08-26 19:35:05
您可能还会对git whatchanged
感兴趣,它很好地概述了在某些提交范围内所做的更改。
如果您想检查您将要提取的内容,请首先执行git fetch
,它只更新远程存储库的本地跟踪分支(而不是您的任何分支),然后使用任何显示您将要提取的新提交的命令。例如:
git whatchanged ..origin
这是通过"origin“显示”我现在所在的地方的共同祖先和origin“之间的提交的简写。
发布于 2009-08-25 22:54:16
您可能想要检查两个存储库之间的差异。假设您有一个本地分支'master‘和一个远程跟踪分支’branch /master‘,在其他人提交代码的地方,您可以获得关于这两个分支差异的不同统计数据:
git diff --summary master origin/master
git diff --stat master origin/master
git diff --numstat master origin/master
git diff --dirstat master origin/master
git diff --shortstat master origin/master
git diff --name-only master origin/master
git diff master origin/master
https://stackoverflow.com/questions/1331385
复制相似问题