Py学习  »  Git

git checkout HEAD~N不会做出我预期的承诺

Peter Kapteyn • 3 年前 • 1235 次点击  

我看到你的行为 git checkout HEAD~N 不会回到我的git历史中。

如果我的提交历史是这样的

git log --oneline -n 5

3ad352f (HEAD -> develop, origin/develop, asdf) commit message
93eeda7 Merged in branch (pull request #224)
911eb78 (origin/sdfa, asdf) Removes txt file
4b9de92 branch1
7a162e3 Merged in branch1 (pull request #223)

我做了一个 git checkout HEAD~5 我的理解是,我的头应该指向5年前的提交。然而,当我运行这个命令时,我看到如下情况:

$ git checkout HEAD~5

$ git rev-parse HEAD
49569625ffe9bfc13fdd4f1f5baab9a72ef7ca02

$ git rev-list --count `git rev-parse HEAD`..develop
13

看起来我实际上在13年前签出了一个提交,而不是我预期的5个。

有人能解释一下发生了什么,以及我如何在一个commit N commit之前签出一个commit吗?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/130033
 
1235 次点击  
文章 [ 2 ]  |  最新文章 3 年前