使用git merge base查看哪些提交更新

使用git merge base查看哪些提交更新,git,Git,这里有点像我的场景。我有两个开发人员在两台不同的机器上工作,但在同一个分支上。在某个时刻,我想知道他们的哪一次提交是最新的 On branch A -> developer 1 has -> C1 -> C2 ->C3 On branch A -> developer 2 has -> C1 -> C2 ->C4 提交C4是在提交C3之后进行的,但是dev2没有提交C3 git merge-base C3 HEAD on dev2's machi

这里有点像我的场景。我有两个开发人员在两台不同的机器上工作,但在同一个分支上。在某个时刻,我想知道他们的哪一次提交是最新的

On branch A -> developer 1 has -> C1 -> C2 ->C3
On branch A -> developer 2 has -> C1 -> C2 ->C4
提交C4是在提交C3之后进行的,但是dev2没有提交C3

git merge-base C3 HEAD on dev2's machine
应该说c3是共同的祖先。我可以用这个来推断C4(当前水头)是最新的吗


感谢您的查找。

如果本地计算机上缺少提交,则无法调用
合并基C3 HEAD
。而且
C3
将不是共同的祖先,
C2
是。您如何定义最新版本?时间戳,内容?因为两个提交(C3,C4)本质上都是相同的“旧的”(两个提交的距离都是1到C2)。如果当用户提交C3或C4时,他将其推送到远程?在dev2的机器上执行此检查时,如果我执行一个fetch,然后运行上面的命令。行吗?很抱歉我是一个完全迷路的新手。如果你能提出一个解决方案,这将是很有帮助的。我不知道你想解决的问题是什么?任何从远程获取更改的人都必须将其更改与远程更改合并(或重新设置基础)。您将得到一个新的合并提交(重定基址时没有额外的提交),其中包含两个开发人员的更改。很抱歉我要告诉的是,根据时间戳,哪些提交是最新的。假设在提交C3和C4时,它们与远程合并,但在我的测试中,我只有C3和C4而没有远程新的合并提交ID。
git show--pretty=medium
将向您显示提交的作者时间戳(以及
git log
和其他一些命令)。我不明白你到底希望从这些信息中得到什么?