Posted on 05/25/2017 7:36:20 PM PDT by dayglored
[Microsoft has switched to Open-Source Code Management for Building Windows]
[Yes, you read that right.]
Microsoft has adopted Git to manage the vast collection of code that is Windows' source, and has shared performance issues it's had to fix along the way.
The state-of-the-nation report for what Microsoft calls the largest Git repo on the planet follows on from its launch of the fat Git repo handler, the Git Virtual File System, as the foundation of its planned shift.
Redmond's certainly feeling pleased with itself about the move, in particular stroking itself about being able to move the whole 2,000-strong Windows OneCore team from the Source Depot internal tool to Git over a weekend.
Redmondista Brian Harry blogs that the 300 GB Windows repository now catches 8,421 pull requests and 1,760 official builds a day.
Even so, he notes, more than 28 percent of the 251 staff that responded to an internal survey aren't happy, and understanding why is as important to keeping the move smooth as waving around scalability numbers.
Reasons reported by Harris include tools that don't support Git, having to learn the new process and performance falling short of demand.
Performance, he writes, is mostly down to Microsoft's Git Virtual File System, a layer designed to present Git as an ordinary file system to the user.
Microsoft pulled telemetry for around 3,500 engineers using GVFS, below (P80 shows the results for the 80th percentile of users, over the last seven days; in red is the change between beginning and end of the week).
While GVFS is faster than vanilla Git, he writes, the system is getting slower over time (as repos and user numbers grow).
[O]ver time, engineers crawl across the code base and touch more and more stuff you end up with a bunch of files that were touched at some point but arent really used any longer and certainly never modified. This leads to a gradual degradation in performance.
Compared to Git, he notes, GVFS changes many operations from being proportional to the number of files in the repo to instead be proportional to the number of files 'read'.
That's what's slowing things down, so Redmond is refining GVFS with something it calls O(modified) instead of the number of files read, key commands are proportional to the number of files a user has current, uncommitted edits on.
He's measured O(modified) against four commands, and claims a speed up of 2.3 times for Status, 3.5 times for Add, 6.2 times for Commit, and 29 times for Checkout.
The other must try harder turned out to be in remote offices. Because the current iteration of GVFS is over-centralised, an operation like Clone, that only needs 127 seconds in Redmond, is taking nearly 25 minutes in Microsoft's North Carolina offices.
To get around that, Harry writes, GVFS's maintainers added a proxy capability: With a proxy configured and up to date, it took 70 seconds (faster than Redmond because the Redmond team doesnt use a proxy and they have to go hundreds of miles over the internet to the Azure data center).
Third parties seem pleased with GVFS as well, with support from Atlassian in SourceTree, Tower, as well as Visual Studio and Git for Windows. ®
(In Before The Admiral Ackbar Meme)
But only slightly.
Personally, BTW, I think this is a great development. The chances of EEE (Embrace, Extend, Extinguish) are minimal. The potential benefits are considerable to all concerned.
When you cant beat them, join ‘em.
what does hundreds of miles of internet have to do with the speed of the service??
my client has a main campus in LA and a dedicated 'cloud' computing center in Las Vegas. Roughly 300 miles between.
Know what the network time between the two is?
4 milliseconds. ROUND TRIP.
please tell me again how a few hundred miles of network is radically slowing down your service... and how it's not your crappy service
So is GIT the same as SH!T?
“On the other hand we have Lister. Who, and let’s be fair to him, is a complete git.”
-Rimmer - Red Dwarf
They probably cant handle patches or incorporate some other brain-dead metaphor that makes using git in a distributed way impossible. Thus leaching efficiency. JMHO....
As you may know, Linus Torvalds, who created Git as the version control system for Linux, has a famous habit of naming his creations after himself.
Linux = Linus + Unix
Git's derivation is a bit more interesting. From Wikipedia:
Torvalds quipped about the name git (which means unpleasant person in British English slang): "I'm an egotistical bastard, and I name all my projects after myself. First 'Linux', now 'git'."[17][18] The man page describes Git as "the stupid content tracker".[19] The readme file of the source code elaborates further:[20]The name "git" was given by Linus Torvalds when he wrote the very first version. He described the tool as "the stupid content tracker" and the name as (depending on your way):
- - random three-letter combination that is pronounceable, and not actually used by any common UNIX command. The fact that it is a mispronunciation of "get" may or may not be relevant.
- - stupid. contemptible and despicable. simple. Take your pick from the dictionary of slang.
- - "global information tracker": you're in a good mood, and it actually works for you. Angels sing, and a light suddenly fills the room.
- - "g*dd*mn idiotic truckload of sh*t": when it breaks
Linus Torvalds, a brilliant (but also arrogant and egocentric) software engineer, created a software program to manage software development. As is his habit, he named it after himself. Having already used "Linus" for an earlier creation (Linux), he used instead a British epithet meaning "an unpleasant person": "git", as a sort of self-referential joke.
The dude has a twisted sense of humor. Brilliant, though.
thx...
This allows the NSA to check out and modify code more easily.
Eh? Git, like any source code control system, allows -any authorized user- to check out and modify code, that's all. It's all out in the open, and it has nothing to do with the NSA. I'm sure the NSA prefers more secret, "back-door" methods of inserting their changes; those method are not as easy with open-source tools and public repositories.
Secret persuasion, pay-offs, blackmail, and plain secret trickery, are much easier with proprietary code and tools, because of the relatively smaller amount of scrutiny and review such code and tools get, compared to the huge open-source community.
So I think you've got the situation inverted. Or else maybe you just forgot the /sarc tag. :-)
Would you please remove me frm this ping list.
I was under the impression it was about “Windows 10”.
It seems that I was mistaken.
Oh, and for a really good browser see - www.brave.com.
Sure, no problem, you have been removed.
Yeah, the list is for -all- versions of Windows, Windows-related news/announcements/issues, and occasionally some news about Microsoft or other MS products. But mostly Windows in all its various flavors.
As time goes on I expect it'll get more and more about Win10, but there's still a 2:1 ratio of Win7 to Win10 users, so it'll take a while.
> Oh, and for a really good browser see - www.brave.com.
Yeah, I have tried Brave, looks promising, but I've had trouble making it behave on all my platforms (Windows, Mac, Linux) -- it goes unstable rather too often for my daily use. I expect over time it will firm up and I'll have more opportunity to use it. Thanks!
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.