Live data from Hacker News

Announcing GVFS: Git Virtual File System

blogs.msdn.microsoft.com

191–200 of 287 posts

Re: Announcing GVFS: Git Virtual File System

#191

Earlier quoted context omitted.

Piper is not built on top of Mercurial.

Sorry, you are right, I got it confused with some other work Google was doing to improve the scalability of mercurial. It's not based on perforce though either, appears to be entirely custom technology.

They first outgrew git, then outgrew perforce and implemented a custom server on top of their usual storage/database stack.

Re: Announcing GVFS: Git Virtual File System

#192

Earlier quoted context omitted.

> I still think we need something better than Git, though. It brought some very cool ideas and the inner workings are reasonably understandable, but the UI is atrociously complicated. And yes, dealing with large files is a very sore point. Note that Google and Facebook ran into the same problems Microsoft did, and their solution was to use Mercurial and build similar systems on top of it. Microsoft could've done that…

> Microsoft could've done that too, but instead decided to improve Git, They didn't improve git, they only made this for themselves and for their product users. Git doesn't restrict you to a single operating system.

> They didn't improve git, they only made this for themselves and for their product users. Git doesn't restrict you to a single operating system.

Given Microsoft's recent form, I'd expect this to appear on Linux before long, and possibly osx too. In any case, it's open source so you could always port it yourself.

Re: Announcing GVFS: Git Virtual File System

#193
post #141
post #123

> when you run “git checkout” and it takes up to 3 hours, or even a simple “git status” takes almost 10 minutes to run. That’s assuming you can get past the “git clone”, which takes 12+ hours. How on Earth can anybody work like that? I'd have thought you may as well ditch git at that point, since nobody's going to be using it as a tool, surely? git commit -m 'Add today\'s work - night all!' && git push; shutdown

How on Earth can anybody work like that? Since it's look like they are still migrating I don't think a lot of people actually did work like that. Maybe just a couple of times to figure out how long it would actually take. Or maybe those who really use it are actually doing shallow clones which would probably take much less time. Actually shallow clone is nice but doesn't seem to be known very well. I use it often if…

Shallow clones are great, until they're not. I don't think I've ever (having tried a few times) cleanly cloned 'below' the graft point when I've needed to, or a different branch.

Re: Announcing GVFS: Git Virtual File System

#194
"For example, the Windows codebase has over 3.5 million files and is over 270 GB in size."

Okay, so this is a networking issue. Or is it a stick everything in the same branch issue?

Whatever the reason here the issue is pure size vs. network pipe, pure and simple. Hum, when can I get a laptop with a 10GBaseT interface?

One of the issue with the way they are doing this (only grab files when needed) is you cannot really work offline anymore.

Re: Announcing GVFS: Git Virtual File System

#195

This is similar to what Google uses internally. See http://cacm.acm.org/magazines/2016/7/204032-why-google-store... : "Most developers access Piper through a system called Clients in the Cloud, or CitC, which consists of a cloud-based storage backend and a Linux-only FUSE13 file system. Developers see their workspaces as directories in the file system, including their changes overlaid on top of the full Piper reposit…

Google is far more advanced than this. They have one giant monorepo (Piper) that's backed by Bigtable (or at least it was, when I was there). Piper was mostly created in response to Perforce's inability to scale and be fault tolerant. Until Piper came along, they would have to periodically restart The Giant Perforce Server in Mountain View. Piper is 24x7x365 and doesn't need any restarts at all. But the key bit here is not Piper per se. Unlike Microsoft, Google also has a distributed, caching, incremental build system (Blaze), and a distributed test system (Forge), and they are integrated with Piper. The vast majority of the code you depend on never actually ends up on your machine. Thanks to this, what takes hours at Microsoft takes seconds at Google. This enables pretty staggering productivity gains. You don't think twice about kicking off a build, and in most cases no more than a minute or two later you have your binaries, irrespective of the size of your transitive closure. Some projects take longer than that to build, most take less time. Tests are heavily parallelized. Dependencies are tracked (so tests can be re-run when dependencies change), there are large scale refactoring tools that let you make changes that affect the entire monorepo with confidence and without breaking anyone.

Google's dev infra is pretty amazing and it's at least a decade ahead of anything else I've seen. Every single ex-Googler misses it quite a bit.

Re: Announcing GVFS: Git Virtual File System

#196

Earlier quoted context omitted.

> Microsoft could've done that too, but instead decided to improve Git, They didn't improve git, they only made this for themselves and for their product users. Git doesn't restrict you to a single operating system.

> They didn't improve git, they only made this for themselves and for their product users. Git doesn't restrict you to a single operating system. Given Microsoft's recent form, I'd expect this to appear on Linux before long, and possibly osx too. In any case, it's open source so you could always port it yourself.

I would be surprised. This sort of project is deeply OS-specific. If they wanted to eventually make it cross-platform, they would have started by implementing FUSE on Windows.

Re: Announcing GVFS: Git Virtual File System

#197
post #81
post #55

Earlier quoted context omitted.

I think Joey Hess' attempt at "solving the problem" deserves a mention. It is open source (GPLV3) licensed. [not proprietary] Written in Haskell. [cool aid] Currently has 1200+ stars on Github and is part of at least Ubuntu ( http://packages.ubuntu.com/search?keywords=git-annex ) since 12.04. [shows something for support and adoption] edit: Link to Github https://github.com/joeyh/git-annex -- thanks dgellow

There's a small but important trap to people who might want to use git-annex as a backup tool, namely that you can't store a git repo in git-annex. http://git-annex.branchable.com/forum/Storing_git_repos_in_g...

Having nested git repositories is a solved problem both in git and in git-annex: use submodules.

https://git-annex.branchable.com/submodules/

Re: Announcing GVFS: Git Virtual File System

#199
post #179

Earlier quoted context omitted.

The reddit thread has quite a few people with opposing opinions, fwiw. Mostly "stuff that's ~instant on unix takes many seconds on Windows" and the like. It's true that Microsoft has contributed a lot (to the benefit of all), but from what I'm seeing it sounds like it's still lagging quite a bit. I haven't touched Windows in quite a while, so I can't really make a claim either way.

I'm at least speaking from daily use in my anecdotes. Apples for apples, yes Windows is going to lag behind Linux. [1] That doesn't mean it isn't fast and stable from the perspective of day-to-day Windows usage, and definitely as I stated in the previous comment, it is much faster and more stable on Windows today compared to Windows a few years ago. Several of the anecdotes on the reddit thread don't even seem to tak…

Ah, you're right, you were referring to on-windows progress.

And "years behind on their git version" is I think the norm for git users :) I pretty regularly have to recommend that coworkers / etc upgrade from git 1.7 (or 1.8 or something similar) to an even-remotely-modern version.

Re: Announcing GVFS: Git Virtual File System

#200

Earlier quoted context omitted.

> Microsoft could've done that too, but instead decided to improve Git, They didn't improve git, they only made this for themselves and for their product users. Git doesn't restrict you to a single operating system.

> They didn't improve git, they only made this for themselves and for their product users. Git doesn't restrict you to a single operating system. Given Microsoft's recent form, I'd expect this to appear on Linux before long, and possibly osx too. In any case, it's open source so you could always port it yourself.

> In any case, it's open source so you could always port it yourself

Of course, but that would be me, and not Microsoft, who's improving git ;-)

Post reply on HN