Git 是否可以获取上次拉取中的提交数?
假设我正在从repo中提取更改以更新本地存储库。我所做的更改包括4次提交。在最近的“git拉动”中,有什么方法可以获得提交的数量吗?谢谢 Git存储引用的先前状态,您可以使用Git 是否可以获取上次拉取中的提交数?,git,git-commit,Git,Git Commit,假设我正在从repo中提取更改以更新本地存储库。我所做的更改包括4次提交。在最近的“git拉动”中,有什么方法可以获得提交的数量吗?谢谢 Git存储引用的先前状态,您可以使用@{}语法查询它们。Pull操作执行合并,从而更新头和分支引用。您可以在使用HEAD@{1}进行更新之前找到HEAD的状态(或分支引用的branch\u name@{1}),然后使用HEAD@{1}..HEAD查找拉入提交的范围。然后,您可以根据需要执行以下操作: 数一数:git rev list HEAD@{1}..HE
@{}
语法查询它们。Pull操作执行合并,从而更新头
和分支引用。您可以在使用HEAD@{1}
进行更新之前找到HEAD
的状态(或分支引用的branch\u name@{1}
),然后使用HEAD@{1}..HEAD
查找拉入提交的范围。然后,您可以根据需要执行以下操作:
- 数一数:
git rev list HEAD@{1}..HEAD@{0}--count
- 列表日志:
git日志头@{1}..HEAD@{0}
特定的引用可以用
ORIG_HEAD
代替HEAD{1}
,但是{}
是更通用、更强大的研究工具。在拉后还是在拉后之前?@JohnZwinck。这个答案是正确的(并且是经过投票的),但我认为值得一提的是git-pull
实际上运行两个git命令,它们是git-fetch
,后跟您选择的第二个命令。默认值是git-merge
,但您可以选择git-rebase
。这是第二个命令,无论是merge还是rebase,它更新HEAD
,从而设置ORIG\u HEAD
,并创建reflog条目。您将在git merge
和git rebase
文档中找到提到的ORIG_HEAD
。对于git pull
,有一些罕见的情况,它不运行第二个命令;在这种情况下,没有更新。