5 ms·
Soaking as someone who is completely unfamiliar with Pijul, the explanation on this page is pretty lackluster. "It is based on changes rather than snapshots"
by wtracy 6y ago
Soaking as someone who is completely unfamiliar with Pijul, the explanation on this page is pretty lackluster.
"It is based on changes rather than snapshots"
Well, every VCS I'm familiar with is based on changes/deltas. I assume that these terms have specific meanings here that I'm not familiar with, but it manages to sound like the author has never heard of git or Mercurial.
- deleted 6y ago[deleted]
- tomjakubowski 6y agogit fundamentally tracks and stores snapshots, not changes. I believe mentioning this is meant to emphasize a difference between Anu (or Pijul) and git.
- ben509 6y agoThis is correct. The common misunderstanding is due to the fact that gits pack files are delta compressed, but that's a implementation detail.
- zanecodes 6y agoGit actually does not work with deltas; each commit contains the hash of a tree object [0], which contains the hashes of the files within it [1]. This tree is effectively a snapshot, since it contains every file hash in the working directory at a certain point in time. Since Git uses the file hash instead of just the file path, it doesn't have to download the files whose hashes haven't changed since the last commit, which is what makes it behave somewhat as if it is operating on a delta. [0] https://git-scm.com/book/en/v2/Git-Internals-Git-Objects#_git_commit_objects https://git-scm.com/book/en/v2/Git-Internals-Git-Objects#_gi... [1] https://git-scm.com/book/en/v2/Git-Internals-Git-Objects#_tree_objects https://git-scm.com/book/en/v2/Git-Internals-Git-Objects#_tr...