![]() |
1
192
要列出所有提交,从当前提交开始,然后是其子提交,以此类推—基本上是标准的git日志,但时间上是相反的,请使用
|
![]() |
2
38
哈德逊的创造者(现为詹金斯)
Kohsuke Kawaguchi
刚刚出版(2013年11月):
如图所示 this thread ,在基于 DAG (Directed Acyclic Graph) ,不存在“单亲”或“单子”。
但是自从 Git1.6.0
注:用于
parent commits
|
![]() |
3
20
我发现的是
我要去哪里
输出的最后一行是commit1的子级(在commit2的路径上)。 |
![]() |
4
10
然而,真正的问题是子提交没有被引用,它只是一个向后链接的列表。找到子commit需要一个搜索,这也不算太糟,但可能不是git想要放到refspec逻辑中的东西。
然后是“git checkout branch~7”等等。
|
![]() |
5
9
两个实用的答案:
基于
@Michael's answer
它默认为通过跟随祖先向当前分支的尖端前进一步(除非另一个commit ish作为第二个参数给出),来给HEAD的子级(除非给出另一个commit ish参数)。
使用
多子女使用分离的头(没有分支)或获取所有子级(不考虑分支):
你也可以改变
|
![]() |
6
7
在这种情况下,您没有考虑到特定的“目的地”提交,而是希望看到子提交可能在 分支,可以使用以下命令:
如果你想看到所有的孩子
还有孙子孙女
,你必须使用
(给出
只有
孙子会用更复杂的
最后,你可以把它输入
:以上命令都假定您已经设置了shell变量
|
![]() |
7
6
我尝试过许多不同的解决方案,但没有一个对我有效。我得自己想办法。 查找下一个提交
|
![]() |
8
5
(这是从回答一个重复的问题开始的。我已经做了一些光编辑来清理它。) Git的所有内部箭头都是单向的,指向后方。因此,没有简单方便的语法来向前推进:这是不可能的。 它 可以“逆着箭头移动”,但是如果你以前没有见过它,那么它的方法是令人惊讶的,然后是显而易见的。假设我们有:
使用
当我们有分支机构时,这一点尤为重要:
下一步是什么
枚举
这个
一个简单的申请表
这个
为了得到“id2方向的下一个提交”,并且有一个很长的提交列表
这也很吸引人
重要的旁注注意,对于“钻石”或“苯环”图形碎片:
将一个提交从
解决这一问题的方法是避免一次只移动一步,并避免陷入路径依赖链。相反,如果你计划访问整个祖先路径链, 在做其他事情之前 ,做一个
|
![]() |
9
4
我有这个化名
|
![]() |
10
2
|
![]() |
11
2
如果子提交都在某个分支上,则可以使用
您可能需要在gitk的“sha1id:”单元格中输入完整的SHA-1。您将需要完整的SHA-1,对于本例,可以通过
|
![]() |
12
0
因此,无法指向来自父级的子提交(如果有的话)。 |
![]() |
13
0
这篇文章(
http://www.jayway.com/2015/03/30/using-git-commits-to-drive-a-live-coding-session/#comment-282667
|
![]() |
14
0
最后我看了一遍
如果即使在reflog中也找不到提交,请尝试:
|
![]() |
charleslcso · 从开源克隆并推送到我的GitHub[重复] 1 年前 |
|
Itachi · 无法为python项目安装“DAWG”包 1 年前 |
![]() |
Igor · git重置已删除目录上的头 2 年前 |
![]() |
Robo · 撤消删除Git中被忽略的文件 2 年前 |
![]() |
Ali EXE · 如何根据bat中命令的输出设置变量? 2 年前 |
![]() |
ShortArrow · 如何使用git管理链接源文件? 2 年前 |
![]() |
Siggi · 使用git移动文件时丢失历史记录 2 年前 |