git-annex/doc/bare_repositories.mdwn
2011-03-03 15:59:16 -04:00

35 lines
1.5 KiB
Markdown

Due to popular demand, git-annex can now be used with bare repositories.
So, for example, you can stash a file away in your
repos's origin: `git annex move mybigfile --to origin`
Of course, for that to work, the bare repository has to be on a system with
[[git-annex-shell]] installed. If "origin" is on gitweb, you still can't
use git-annex to there.
**This is still an experimental feature!**
Known to work ok:
* `git annex move --to` and `--from`, when pointed at a bare repository.
* `git annex copy` ditto.
* `git annex drop` can check that a bare repository has a copy of data
that is being dropped.
* `git annex get` can transfer data from a bare repository.
There are a few caveats to keep in mind:
* Using non-local bare repositories is not tested and probably broken.
* `git annex init` can be run in a bare repository, but it cannot
store the name you gave the repository in .git-annex/uuid.log (because
the bare repository has no such file to commit to).
* `git annex trust` cannot be used in a bare repository, and currently
does something pointless. Same for `untrust` and `semitrust`.
* `git annex fromkey` does something pointless in a bare repository.
* `git annex fsck` cannot detect any problems in a bare repository.
* `git annex unused` will think everything stored in a bare repository
is unused.
* `git annex setkey` is a plumbing-level command, and using it manually
to add content to a bare repository is not recommended, since there
will be no record accessible by other repositories that the content
is stored there.