guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Git-LFS or Git Annex?


From: Giovanni Biscuolo
Subject: Re: Git-LFS or Git Annex?
Date: Thu, 25 Jan 2024 13:03:49 +0100

Hi pukkamustard,

git-annex is complex but no so complicated when you learn the two
foundamental concepts (sorry if I say something obvious to you!):

1. only the names of the files and some other metadata are stored in a
git repository when using git-annex, the content is not; when you "git
annex add some-media" it is (locally!) stored in a special folder named
.git/annex/

2. content can be transfered (get, put) from one repository to another
and the tool used to transfer depends (automatically choosen by
git-annex) on the remote where the data is (rsync, cp or curl), there
are also many "special remotes" available for data transfer. (see
https://git-annex.branchable.com/walkthrough/#index11h2 for an ssh
git-annex remote)

See https://git-annex.branchable.com/how_it_works/ for a general
description and https://git-annex.branchable.com/internals/ for a
description of the content of each git-annex managed (and reserved)
directory.

Just to make it clear, you can have one or more "plain" git remotes just
for location tracking and one or more git-annex remotes (also special
remotes) for file transfes (and location tracking if they are also
regular git remotes)

pukkamustard <pukkamustard@posteo.net> writes:

[...]

> It ended up sharing remotes that are no longer existant or
> not-accessible and somehow it was hard/impossible to remove reference
> to those remotes (afaiu Git Annex remotes can only be marked as "dead"
> and not removed -
> https://git-annex.branchable.com/git-annex-dead/). As the number of
> such remotes increased, I became more and more confused.

https://git-annex.branchable.com/git-annex-dead/:
--8<---------------cut here---------------start------------->8---

This command exists to deal with situations where data has been lost,
and you know it has, and you want to stop being reminded of that fact.

When a repository is specified, indicates that the repository has been
irretrievably lost, so it will not be listed in eg, git annex whereis.

--8<---------------cut here---------------end--------------->8---

If you want git-annex to definitely forget about dead repositories
(throwing away historical data about past locations of files) you can
use "git-annex forget --drop-dead"

If you want to remove a remote (and stop syncing with it) you can do it
as you do with any git remote: "git remote rm <remote>"

[...]

> Still, I would recommend to NOT store the videos in a remote Git
> repository but a publicly accessible rsync server as a Git Annex
> special remote (https://git-annex.branchable.com/special_remotes/).

Good catch!

This way we can still use the current Savannah git hosted remote (not
supporting git-annex-shell, AFAIK) for location tracking and the same
(or more) rsync servers we are using to store media.

Thanks! Gio'

-- 
Giovanni Biscuolo

Xelera IT Infrastructures

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]