我不知道这是不是在开玩笑,但是一旦我阅读了git,hg或svn等版本控制系统中所谓的文件正式定义,就可以了。这就像是一个同胚的数学对象。这是在开玩笑吗,或者真的有关于版本控制系统和VCS数学的计算机科学理论吗?
我不知道这是不是在开玩笑,但是一旦我阅读了git,hg或svn等版本控制系统中所谓的文件正式定义,就可以了。这就像是一个同胚的数学对象。这是在开玩笑吗,或者真的有关于版本控制系统和VCS数学的计算机科学理论吗?
Answers:
您正在考虑Isaac Wolkerstorfer(@agnoster)的推文:
一旦您掌握了分支是映射Hilbert空间子流形的同胚内爆函数的基本概念,git就会变得更加容易。
不幸的是,这是个玩笑。正如作者在Quora上写道:
它的意图是坚定地嘲弄自己。我实际上很喜欢git,我认为它的复杂性被大大夸大了。同时,我很同情git专家向新手提供的建议听起来像是难以理解的胡言乱语。
它无意具有更深层的含义。尝试以这种方式进行分析应该是徒劳的,但是由于现实中存在一个错误,如果您尝试足够的话,实际上可以使任何手动编写的语句都适合。
除了玩笑,还有形式化版本控制的工作。与理论和实践结盟的一项努力是David Roundy对Darcs的补丁理论研究。该理论的主要目的是为合并建模,尤其是解决冲突。该的darcs维基具有介绍了理论和几个三分球,以及一个参考书目(没有维护,如果你想关于这个问题的最新看法,但它确实列表中的那么过时由切赫博迪2009年的调查纸)和列表会谈(其中包括最新资料)。还有一本Wikibook。一篇开创性的论文是《版本控制的原则方法》作者:安德烈斯·洛(AndresLöh),伍特·斯威斯特(Wouter Swierstra)和达安·莱恩(Daan Leijen)。
补丁理论确实导致了分类模型,最近在Samuel Mimram和Cinzia Di Giusto 的《补丁分类理论》和Carlo Angiuli,Ed Morehouse,Daniel R. Licata和Robert Harper的同位补丁理论中进行了探索。在Mimram和Di Giusto的工作中,该模型将文件作为对象,将小块作为态射。我认为这使得合并分支成为一个函子-如果您在单个存储库中工作,则是endofunctor。“同胚的终结者”对我来说没有意义。涉及同伦理论,希尔伯特空间的子流形可能不会那么遥远...