- Git + it's a leaky abstraction. + why do we need to know about the stash? + why is it that changing to a different branch doesn't give any visual clue, even worst it keeps the files I'm working on that are not part of the repository yet.
for an academic treatment of the defects in Git read: What's Wrong with Git? A Conceptual Design Analysis S. Perez De Rosso and D. Jackson. In Proceedings of the 2013 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Onward! 2013)