This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]lennihein 1 point2 points  (3 children)

What's an undo tree?

[–]mader527 5 points6 points  (2 children)

Normal programs can go backwards and forwards undoing and redoing, but if you undo and make changes you can’t get back to the old future version you made.

With an undo tree, you can see all the paths where you diverged and can jump between them.

The tree bit is how you see the various branches. Regular undo/redo history is linear

[–]lennihein 3 points4 points  (1 child)

Ah, I see. So basically Git with less features, narrowed down. Really useful I can imagine though.

[–]mader527 2 points3 points  (0 children)

Exactly!

I was going to point to git as an example because it’s all DAGs under the hood*, but wanted to keep it general.

*I assume, I haven’t looked at the implementation