Programmers seem to have little (or only moderate) problem with pointers and references in programming languages. With the occasional bug here or there with things like using `==` on `Integer` (Java). But bugs aside: they get what it is about. But when this is used in Git it becomes a sort of philosophical conundrum? Like huh, what is the ontology of a branch vs. the phenomenological nature of it. I don’t get it.