4 ms·
I didn't start my tech journey til late 00's, so it's constantly surprising to me that something as ubiquitous as git only came out in 2005. Is it possible at
by JohnMakin 3y ago
I didn't start my tech journey til late 00's, so it's constantly surprising to me that something as ubiquitous as git only came out in 2005.
Is it possible at all this story helped spur the widespread adoption of git (the early implementation of this tool)?
- jeffbee 3y agoI think it is odd that the story mentions git at all. Git5, the mentioned wrapper around piper, has only a niche audience when I last used it 5 years ago, and it was a demonstrated fact that the users of it were less productive than perforce users. Whether that was causal or not was unknown.
- hanwenn 3y agoHi, I'm the Han-Wen from the title. The story mentions git because git5 got me into developer tooling. More in particular, it put me in touch with Shawn Pearce who ran the Git/Gerrit team at Google. When I went to work for him, Shawn wanted to have codesearch support in Gerrit, and Zoekt was ultimately the outcome of my explorations in this space. IIRC, Git5 was deleted approximately 5 years ago because Fig (the Hg based replacement) had taken over all the use cases
- dag11 3y agoIs Fig still kicking? I worked on it a bit as an intern back in 2014, but Mercurial has also been on its way out of mainstream support over the last few years. It was a really neat project!
- hanwenn 3y agoSee https://www.youtube.com/watch?v=bx_LGilOuE4 https://www.youtube.com/watch?v=bx_LGilOuE4. I think the plan is to replace to it with something based off JJ.
- billllll 3y agoI agree there doesn't seem to be a good connection between work on version control and work on code search. However, I don't think it makes sense to downplay git5. Anecdotally, basically everybody knew about it, and I'd constantly run into people using it (which is by itself noteworthy since nobody was exactly talking about version control all the time). Git5 was at the time the most robust solution to chain commits, which was tedious bordering on impossible without some tool. Without definitive data, I wouldn't say users were less productive with git5: it definitely was a useful tool that people at least recommended for chain commits. I was definitely more productive with it. There were a lot of footguns though, and I do think the hg wrapper that superseded it was way better.
- ajross 3y agoGit stepped into a source control ecosystem that was well-served (albeit contentious). People knew (or at least thought they knew) what they wanted from bk/svn/CVS/p4/rcs/sccs. So git essentially was the "final form" that integrated all the various workflows and topped it off with a maximally-scaled use case (linux) that proved out the tool, drove innovation in integration/scripting/gadgetry, and provided a clear beacon for everyone else to adopt it. So it won. But in 2004, if you asked around, everyone would have told you that a tool like this was coming at some point (even if they probably wouldn't have described it as very git-like!).
- pgeorgi 3y agoIf you squint a little, https://web.archive.org/web/20030629114010/http://www.venge.net/monotone/index.html https://web.archive.org/web/20030629114010/http://www.venge.... is a fair approximation of some of the core ideas behind git (and Linus played with it and wrote a critique of its short-comings before starting git)
- mettamage 3y agoThat is so cool to see where Linus got some of his inspiration from. It made a few things more clear to me as to why git uses certain things.
- justrealist 3y agoOh yeah. I remember merging SVN branches into production in 2010 or so. It was a... special time. Let's not reminisce.
- dekhn 3y agoBefore git, most people in my larger circle used RCS, a UNIX version control system from the early 80's. It was very limited (basically each file had its own side-file that contained revision data, and there was no project-wide file) but did its job. Many people moved over to VCS, which used RCS files but added project-wide files so you could manage a dir tree. After that, I think many people moved to subversion, which had a lot more functionality for distributed VC, for exmaple there was a server. svn was popular for a while but building it was painful (due to berkeley db) and it sort of never grew. I invested a lot of time in (specifically apache with mod_dav and mod_dav_svn) but lost interest in VC after fighting with subversion. git came along and from what i can tell it mainly had "it's by linus, and the kernel uses it" and "it's fast" and "something about reflogs". I use git day-to-day but I still; can't explain how git became so ubiquitous; I find using it outright painful.
- dws 3y agoLightweight branches was a huge selling point. If you didn't do them often enough that they were rote, branches in RCS/CVS/SVN required ritual sacrifice.
- reportingsjr 3y agoMercurial (aka hg) was also gaining popularity at the same time as git. The interface was a lot nicer and more sane than git, but it had some serious performance limitations that hampered it. Both were definitely way better than SVN/CVS/etc.
- dekhn 3y agoYes, after using git for a few years I was introduced to Mercurial and it was like a breath of fresh air, although I'm also told hg added a number of things that made it much more usable, "right before I started using it". Since I have limited brain capacity I focus my efforts on being able to use git, not hg, merely because it has so much marketshare.
- cpach 3y agoNit-pick: Did you mean CVS?