请教一个 git 问题, 最近看 git book 文档中有图片如下

216 天前
 skyrim61
https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5%BB%BA%E4%B8%8E%E5%90%88%E5%B9%B6

请教下

按直觉, c0 是一切的源头, 箭头流向应该是 c0->c1->c2 才是

为什么箭头是 c2->c1->c0 ?

另外. v2 怎么贴图片?
1851 次点击
所在节点    git
13 条回复
newaccount
216 天前
你画类图的时候箭头是从子类指向父类,这里一样
lrh3321
216 天前
把每个分支当成不同的链表,最新的提交指向它的上一个提交,然后一直到头。
gzyguy
216 天前
我也有这样的疑问,不过知道后反着理解就好了
skyrim61
216 天前
箭头的指向可不是随意决定的, 不知道是画图的作者是基于什么考虑的? 比如指向父提交? 或者其它
yolee599
216 天前
我先提一个问题:一个父亲能有多个孩子,但是一个孩子只会有一个父亲。请设计一个数据库描述他们的关系。

请问你怎么设计?
yanghanlin
216 天前
@yolee599 一个 Git commit 可以有多个 parent 的,如 merge commit
IvanLi127
216 天前
因为那个箭头的源头是 commit 自己的,commit 自己是记录着上一个 commit 是谁,所以指向父级。大概是按数据结构画的,类似链表。
具体这个箭头啥意思,除非作者写清楚这箭头是啥,不然就只能这么推断了,应该没啥标准。
skyrim61
216 天前
是的, 一个 Git commit 可以有多个 parent 的.
wanqingfengtao
216 天前
@skyrim61 你可以再看一下 3.1 ,除了根结点,每次提交产生的提交对象会有一个(或多个)指针指向上次提交对象
所以箭头(指针)是从子节点指向父节点
FYFX
216 天前
leonshaw
216 天前
cybernty
216 天前
cybernty
216 天前
git 核心原理很简洁

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1043156

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX