Google Drive: Shortcuts replacing files and folders stored in multiple locations
support.google.com
support.google.com
(IIRC, the requirement stemmed from the need to support the various applications that were being folded into / integrated with Google Drive, such as Photos which of course allows a photo to appear in multiple albums.)
The Photos/Drive integration was removed a long time ago. What other integrations were behind the original requirement? I'm curious to know if the extra complication was worth it in the long run and how long the integrations that needed this feature hung around for.
And no, definitely the complication was not worth it in the long run. :-) That project got way more complicated than anyone wanted (not that there's anything unusual about that).
This was my understanding as well. The original Drive was built effectively as a directed graph (with cycles allowed). Any file or folder could be stored in multiple locations. And permissions were at a per-file basis, so 2 people viewing the same folder may see different sets of files.
And permissions were definitely a hard part of it, as if you applied new permissions to a folder and all children, it had to walk the entire graph to update the permissions.
This is the advantage of the Team Drive style structure that the Drive team put out. It follows the classic filesystem design of a tree, which allows for easier permissions modeling, among other things. It's also why all "hard links" are now becoming shortcuts / Soft-links.
This isn't an area I'm qualified to have a technical opinion on but if you'd care to elaborate I'd be interested to learn more.
It's not hard, but expensive.
If you have a file system where it is a proper tree in any given node within that tree only has One parent, and walking up all the parents you always only have one parent up to the root node, you gain some useful properties from that. You can build a permission model where you just have to check the permissions of all of your parents to see if someone has access to a given file deep within the system. This means that if you Grant Reed access on any node within that line of parents, all children implicitly get access.
Now imagine a directed graph, and you set permission on a node and you want to say all connected nodes also should get this permission. You could definitely walk all the nodes and apply that permission, but now you have to write said permission to every node, rather than being able to set it on a parent and let all children inherit it. Even if you know all of your parents, then all of those nodes have multiple parents. And you can have cycles. Checking parents for permissions becomes way more complicated for users to understand, which is why Drive likely didn't do this.
Isn't that how file sharing/syncing services have worked since the MegaUpload days?
If I upload the same file to two separate folders it's because I want two separate copies. If I change one of the copies, I don't want it to change the other copy.
There's advantages and disadvantages to using either.
Any idea if these hard links can be created with Drive clients on Mac/Win?
If that's what you were doing, you won't get affected by this. This is about files/folders that were "hardlinked", which was difficult to do by accident. I think you had to hold Ctrl while dragging the file into another folder, or something like that. (The key to notice is that they're talking about one file being in multiple directories, not multiple files with identical contents.)
That's precisely the behavior you'll get. You were allowed in the previous implementation to upload a file to one location and then put it in 2 locations, such that you would have changes in either location reflected the same way. This wasn't 'copying' a file, it was multiparenting it.
I'm on Linux where there's no official Drive client, so this won't happen to me. (I use Syncthing instead.)
I'm 99% sure that this is talking about "hard links" not "files with the same contents".
I'm on Linux with Syncdocs for syncing Google Drive so will wait and see how it handles things.
I imagine this was a tough call for a PM, with a lot of cases to consider and account for given this is so embedded in the Drive product DNA.
Is there any way for the user to specify that they want a full copy of a file?
What happens if another user makes a copy of the file and alters it? Are both copies changed?
"The replacement decision will be based on original file and folder ownership, and will also consider access and activity on all other folders to ensure the least possible disruption for collaboration."
"You can’t opt-out of the replacement."
This might be a deal-breaker for some users. Why not just ask the user if they want a replacement versus a full copy?
Shortcut preserves semantics: working on the original file or working on a shortcut to the original file will both modify the same document. Fully copy (create a new document with same contents as original document at a point in time) would bring new semantics.
Most people I know prefer symlinks for most uses, so this feels like better UX.
I hope that this change can finally unlock the API to be able to return all the children of a given node recursively. Multiple parents make this much harder.
The drive API doesn't have that at the moment and it makes traversing deep directory trees really painful.
An API search term to find the objects which have a given ID as an ancestor at any depth would be fantastic.
Under the new process the files will no longer exist on the drive, but will now be links to files on Google Drive. Is that correct?
How did one achieve this? I would like to know, because I'm wondering if I have unintentionally done so. I gather this is completely different from "Make a copy" in the web UI. So how did you do it?
If so, what more compelling reason could there be to go migrate right away to Dropbox (or a similar service)?
I might want to have different copies as "snapshot" and "working", de-duping them makes any version-control-like system mutable, doesn't it?
There is no de-duping mentioned anywhere in the Google support page.
thanks!
I'm losing access to the unlimited Google Drive storage that my uni provided and trying to figure out where I should move to.
A NAS would be great but at this moment I'm too nomadic to want to worry about that.
I'm fine with paying but would rather pay an organization that's very respecting of privacy and less likely to nuke your account without warning if you do something they don't like.
Only need a few hundred GB of space.
I'm using https://filebrowser.org/
You can run it on a VPS, NAS or homeserver.
If you want something managed, you can pay Hetzner for managed nextcloud.
Currently thinking of switching from Google Drive to Syncthing, since the new Google Drive clients suck and Google is going to be making my service worse with the new G Suite changes.
They have disallowed this for Shared Drives from the start as shared drives have ownership and strictly hierarchical permissions. Now they want to bring this UX simplification to everywhere in drive.
I'm sure they are happy to simplify the backend but this definitely makes the product less confusing. It does however make some rare workflows very complicated.