4 ms·
Said to by /u/vfclists on Proggit .. "folks should realize that ENVY was Smalltalk's Git, way before when before anyone heard of Git"
by paul_h 9y ago
Said to by /u/vfclists on Proggit ..
"folks should realize that ENVY was Smalltalk's Git, way before when before anyone heard of Git"
- eesmith 9y agoWhat was distinctively git-like about it that makes that connection more meaningful than "it was a version control system"? That is, what made it Smalltalk's git, and not, say, Smalltalk's CVS or ClearCase? The linked-to page suggests that ENVY used a centralized system. (Eg, "The Git model is better for distributed development" and "it had a small process that ran on a server to manage record locking".) Consider also some of the limitations in ENVY. "You would bring your changes to the machine in the form of (IIRC) a list of RCS-like versions of individual methods, then review and merge them with latest." and "What wasn’t available, was automatic merging".
- igouy 9y ago> what made it Smalltalk's git Nothing obvious. What made it more than "Smalltalk's CVS" was fine-grained method-level control of versions and configs.
- eesmith 9y agoAnd why not ClearCase, or DSEE before it? Ah, I think I understand it. I think it comes from a belief that most people treat "git" as a synecdoche or even the entirety of version control systems. The quote here uses "git" in two ways: 1) "ENVY was Smalltalk's Git" meaning "ENVY was Smalltalk's version control system", and 2) "anyone heard of Git" meaning "anyone heard of the Git system, started by Torvalds." If so, I think it does a disservice as it reinforces that wrong belief, and is confusing for those who know of other VCSes.
- smacktoward 9y agoFrom TFA it sounds like Envy was version control that people didn't find skull-crushingly painful to use, which establishes it as pretty different from CVS or ClearCase.
- eesmith 9y agoHeh-heh. After working with RCS, CVS, SCCS, SVN, and Bazaar, I find Mercurial to be a good fit for my model of how to work, while using git drives me batty. Perhaps my skull has been crushed already. :) FWIW, I and others in my group used CVS for years, after migrating from RCS. We didn't find that difficult. I didn't get a sense from the article that the people involved found RCS, ClearCase, or CVS that hard to use, only that Envy was a good fit for how they used Smalltalk.
- igouy 9y agoENVY fit how Smalltalkers used Smalltalk. Accepting a code change locally, in the usual way, created a new edition in the database. Once editions were versioned and released they would become visible to other developers, and loadable by-default.
- paul_h 9y agoI've spent the last 12 years putting a knife in ClearCase whenever I saw it and it's shit branching model. And I have no idea about ENVY, I've never used it (or SmallTalk). I trust that people that I rate that have used both rate them appropriately.
- cwp 9y agoYeah. I would say that Monticello was Smalltalk's git. It does the same sort of method-level versioning as ENVY, but it's a true distributed version control system: there's no central server, no locking, and you can always push and pull versions between repositories and merge them regardless of where they came from. Monticello preceded git by a couple of years, so it took a little while for the Squeak community to embrace it and figure out how to organize its self around DVCS-based development.