Microsoft and GitHub Team Up To Take Git Virtual File System To MacOS, Linux (arstechnica.com)
An anonymous reader writes: One of the more surprising stories of the past year was Microsoft's announcement that it was going to use the Git version control system for Windows development. Microsoft had to modify Git to handle the demands of Windows development but said that it wanted to get these modifications accepted upstream and integrated into the standard Git client. That plan appears to be going well. Yesterday, the company announced that GitHub was adopting its modifications and that the two would be working together to bring suitable clients to macOS and Linux. Microsoft says that, so far, about half of its modifications have been accepted upstream, with upstream Git developers broadly approving of the approach the company has taken to improve the software's scaling. Redmond also says that it has been willing to make changes to its approach to satisfy the demands of upstream Git. The biggest complexity is that Git has a very conservative approach to compatibility, requiring that repositories remain compatible across versions.
Microsoft and GitHub are also working to bring similar capabilities to other platforms, with macOS coming first, and later Linux. The obvious way to do this on both systems is to use FUSE, an infrastructure for building file systems that run in user mode rather than kernel mode (desirable because user-mode development is easier and safer than kernel mode). However, the companies have discovered that FUSE isn't fast enough for this -- a lesson Dropbox also learned when developing a similar capability, Project Infinite. Currently, the companies believe that tapping into a macOS extensibility mechanism called Kauth (or KAuth) will be the best way forward.
Microsoft and GitHub are also working to bring similar capabilities to other platforms, with macOS coming first, and later Linux. The obvious way to do this on both systems is to use FUSE, an infrastructure for building file systems that run in user mode rather than kernel mode (desirable because user-mode development is easier and safer than kernel mode). However, the companies have discovered that FUSE isn't fast enough for this -- a lesson Dropbox also learned when developing a similar capability, Project Infinite. Currently, the companies believe that tapping into a macOS extensibility mechanism called Kauth (or KAuth) will be the best way forward.
Go ahead. Become dependent on yet another third-party "cloud" service.
Idiots.
It's not 1995. Microsoft of today is very different of the Microsoft from two decades ago. The presence of Azure alone guarantees that their old business approaches are irrelevant in today's market.
Microsoft has become one of the premiere open source providers. They've released a huge amount of great open source software, from .NET Core to Visual Studio Code to TypeScript and beyond.
Maybe it isn't apparent to people firmly stuck in the past, such as yourself, but Microsoft has leapfrogged many of the traditional open source companies.
People actually like using .NET Core on platforms like Linux and macOS. They like using Visual Studio Code, because it's an excellent cross-platform IDE. They love using TypeScript because it brings sanity to JavaScript.
Yes, Microsoft does embrace and extend open source software. And we're thankful for it! They're providing us some great improvements. That's what open source is all about: allowing a wide variety of contributors to improve the open source software.
As for the Extinguish phase you're fixated on, it's not an issue. They just aren't doing it. They can't really extinguish the projects based on the code they've released under very liberal open source licenses.
Frankly, I've had far better luck with the open source software from Microsoft than I've had with open source software from the traditional open source companies.
For example, software like .NET Core and Visual Studio Code has greatly improved my Linux experience. It has helped make me a more productive programmer. On the other hand there is a lot of software that didn't come from Microsoft, like systemd, GNOME 3, PulseAudio and NetworkManager, that has actually served to ruin my Linux experience in many ways.
I never thought I'd be saying this, but Microsoft really has helped improve my Linux experience, while many traditional Linux supporters have actually made it worse! I encourage Microsoft to embrace and extend open source software. So far I've found their contributions to be excellent.
The "problem" is that git takes a *conserv*ative approach towards compatibility?
So in other words: Microsoft would like to break git's compatibility with non-Windows?
YOU DON'T SAY!
How many times have we go through this exact story again and again?!
You do not deal with Microsoft. You do not talk to them, you do not take anything from them, you do not follow their suggestions, and you do not get in their van!
Lest you want to come out once as the skin worn by Microsoft, and once as dog food from the meat grinder.
This is what happens when you pick technologies by popularity and groupthink. Git has very real flaws: the worst UI of any source control system I've ever used, inability to deal with large repositories, a confused and overcomplicated operational model, trouble with storing large binaries. You can always spot the people who learned Git as their first VCS: when confronted with these problems, they'll say things like "monorepos are bad" or "the CLI tools were always meant to have 'porcelain' built on top of them, not used directly, so it's fine if they suck" -- they have drunk the koolaid and can't see things any other way or explain real counterexamples to the contrary.
For hobby projects these are academic problems, but if you're working at the scale of a complete operating system then you have to confront Git's weaknesses head-on and fix them. The fact that MS felt it was worth going down this rabbithole just to follow the crowd is sad.
Why is this story at apple.slashdot.org ?