如何引用 HEAD 的 ahead 提交?
例如,在 HEAD 之后的 1 个提交是 HEAD~1。
如何相对于 HEAD 向相反方向移动?
基本上,我做了 3 次 git checkout HEAD~1
。现在我想向前推进 1 次提交,有效地撤销我最后的 git checkout HEAD~1
。我该怎么做?
我理解commits的一个分支就像一个单向链表,每个commits只指向它的parent。因此,如果遍历到提交的 child 是不合理的,我想知道如何在它们之间进行处理。
最佳答案
一个提交可以有无限的 child 。如果你想查看所有追溯到提交的历史,你可以
git log --all --ancestry-path ^$commit
或者只是
git branch --contains $commit
git tag --contains $commit
显示他们的名字。
随心所欲的显示选项。如果你想自动查找父级是特定提交的提交,你可以从
开始child-commits() {
git rev-list --all --ancestry-path --parents ^$1^{} \
| awk /$(git rev-parse $1^{})'/ {print $1}'
}
但是如果你只是想看看你去过哪里,使用
git reflog
显示是什么影响了您的 HEAD,以及原因。
关于git - 如何检查提交的 child ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35823994/