1
30
你不能真的那样做。Git中的历史是一个有向无环图-每个提交都包含对其父级的引用,但父级没有对其子级的引用。
当您考虑从中创建多个分支的提交时,这里的问题应该变得明显。你说的“下一个承诺”是什么意思?对于父级,您可以取消编号(正常的合并提交有第一个和第二个父级),但是对于子级,您如何做到这一点?即使你知道你想在哪个分支机构工作(例如,你已经退房了
也就是说,在简单的情况下,您可以这样做:
显然,这对于线性历史来说是很好的。与合并…
编辑:假设您知道要向前移动到哪个分支。如果你不…好吧,您很难在所有引用中找到以当前头部为父级的提交,这可能会使
然后从线上抓起另一个sha1(使用awk,随便什么)。但是,如果有多个结果,您必须手动检查或做出任意选择… |
2
3
我认为这是不可能的,因为Git提交只存储 起源 承诺,但不是它的子项。 想象一下一个提交可以存储它的子项。如果您将在此提交中创建多个分支,那么多个提交将此提交作为父提交会发生什么?那么“head+”是什么?这是模棱两可和错误的。 我从数据结构中了解到: Git将历史存储为单个链接列表,而您的操作将需要一个双链接列表。 |
3
2
据我所知,没有任何象征性的方式来指代承诺的孩子。
我现在能给你的最好的是
|
charleslcso · 从开源克隆并推送到我的GitHub[重复] 1 年前 |
Itachi · 无法为python项目安装“DAWG”包 1 年前 |
Igor · git重置已删除目录上的头 2 年前 |
Robo · 撤消删除Git中被忽略的文件 2 年前 |
Ali EXE · 如何根据bat中命令的输出设置变量? 2 年前 |
ShortArrow · 如何使用git管理链接源文件? 2 年前 |
Siggi · 使用git移动文件时丢失历史记录 2 年前 |