展开讨论

创业与收入经验摘录 · 机器翻译

我实际上写过一篇相关文章,我以为我把它弄丢了

我实际上写过一篇相关文章,我以为我把它弄丢了。我找到了它,日期是2002年2月15日:--- 考虑到任何D应用完全由一组.module文件和编译它们所需的工具来指定。为每个唯一的.module文件分配一个唯一的GUID。然后,一个应用由一组.module GUID来指定。每个应用也被分配一个GUID。在客户端的机器上存储了一个已经下载的.module文件池。当下载一个新应用时,实际下载的只是一个GUID。客户端会检查该GUID是否是池中已有的应用,如果是的话,就完成了。如果不是,客户端会请求该GUID的清单,清单是一组.module GUID的列表。清单中的每个GUID都会被检查是否在客户端池中,任何未找到的都会被下载并添加到池中。一旦客户端拥有构成一个应用的所有.module文件,就可以全部编译、链接,并将结果缓存到池中。因此,如果一个应用被更新,只需要下载更改的.module文件。

源讨论20年的Git原帖 227 条评论 · 导入时统计
3

这条内容在回应什么?

父级讨论 · 节选

WA

大约在2002年左右,我有一个想法,就是给项目的每个部分都打上唯一的哈希码。有了哈希码,就可以下载对应的文件。整个项目的哈希码是一个包含构成该项目的文件哈希码列表的文件。哈希码可以表示构建它的编译器以及它链接的库。 我向一些软件企业家(Wild Tangent和Chromium)展示了这个想法,但他们对此没有兴趣。 我之后再也没有继续做其他事情,就这样过去了。

完整原文

社区评论 0

还没有社区评论,来聊聊你的看法。

原讨论中的回复 3

仅展示本次导入中包含的直接回复。中文为机器翻译,可查看英文原文。

EN

听起来它也正在朝着为D工具链专门设计的Nix版本迈进,使用GUID代替哈希值输入。

完整原文
PM

是的,请允许我向你介绍Nix白皮书,这基本上就是这个概念,因此值得你阅读: https://edolstra.github.io/pubs/nspfssd-lisa2004-final.pdf 另一个可能相关的概念是Unison语言: https://www.unison-lang.org/

完整原文
MG

使用哈希(内容可寻址)而不是GUID(每个版本的随机ID)是一个很大的区别,尽管如此

完整原文
在 Hacker News 阅读

尊重不同观点,分享具体经验。

登录后即可发帖、评论、转发和引用。