34 lines
1.3 KiB
Markdown
34 lines
1.3 KiB
Markdown
git-annex can store data in [git-lfs](https://git-lfs.github.com/)
|
|
repositories, using the [[git-lfs special remote|special_remotes/git-lfs]].
|
|
|
|
You do not need the git-lfs program installed to use it, just a recent
|
|
enough version of git-annex.
|
|
|
|
Here's how to initialize a git-lfs special remote on Github.
|
|
|
|
git annex initremote lfs type=git-lfs encryption=none url=git@github.com:yourname/yourrepo.git
|
|
|
|
In this example, the remote will not be encrypted, so anyone who can access
|
|
it can see its contents. It is possible to encrypt everything stored in a
|
|
git-lfs remote, see [[fully_encrypted_git_repositories_with_gcrypt]].
|
|
|
|
Once the git-lfs remote is set up, git-annex can store and retrieve
|
|
content in the usual ways:
|
|
|
|
git annex copy * --to lfs
|
|
git annex get --from lfs
|
|
|
|
But, git-annex **cannot delete anything** from a git-lfs special remote,
|
|
because the protocol does not support deletion.
|
|
|
|
A git-lfs special remote also functions as a regular git remote. You can
|
|
use things like `git push` and `git pull` with it.
|
|
|
|
To enable an existing git-lgs remote in another clone of the repository,
|
|
you'll need to provide an url to it again. It's ok to provide a different
|
|
url as long as it points to the same git-lfs repository.
|
|
|
|
git annex enableremote lfs url=https://github.com/yourname/yourrepo.git
|
|
|
|
Note that http urls currently only allow read access to the git-lfs
|
|
repository.
|