Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Versioning #45

Open
graft opened this issue Oct 11, 2018 · 1 comment
Open

Versioning #45

graft opened this issue Oct 11, 2018 · 1 comment

Comments

@graft
Copy link
Contributor

graft commented Oct 11, 2018

When a new verison of an existing file is uploaded, instead of deleting the old file it should be kept as a previous version.

  1. The old binary is moved to .
  2. The new binary is created in place at
  3. A 'Version' record is created for the file, tracking the old binary's md5sum and the backup_id for the old version, if any.
  4. The file's json record reports a list of previous versions, if any, as a list of md5sum.
  5. The file download API responds to a version parameter which downloads the given md5sum revision of the indicated file.
  6. The UI allows the user to examine the list of versions for a file and download one of them.
@graft
Copy link
Contributor Author

graft commented Mar 2, 2020

File revision quiz

Files A and B are in folder (C). File D is in folder (E). What is the version history of file A under the following circumstances?

  1. A new file is uploaded with name A.
  2. File A is deleted. A new file is uploaded with name A.
  3. File A is renamed to F.
  4. File A is copied to F.
  5. File A is copied to folder (E).
  6. File A is renamed to B (B is replaced).
  7. File A is moved over file D (D is replaced).
  8. Folder (C) is renamed to (G).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant