Scroll to navigation

git-annex-init(1) General Commands Manual git-annex-init(1)


git-annex-init - initialize git-annex


git annex init [description]


Until a repository (or one of its remotes) has been initialized, git-annex will refuse to operate on it, to avoid accidentally using it in a repository that was not intended to have an annex.

It's useful, but not mandatory, to initialize each new clone of a repository with its own description. If you don't provide one, one will be generated using the username, hostname and the path.

If any special remotes were configured with autoenable=true, this will also attempt to enable them. See git-annex-initremote(1). To prevent that, re-enable a remote with "autoenable=false", or mark it as dead (see git-annex-dead(1)).

This command is entirely safe, although usually pointless, to run inside an already initialized git-annex repository.

A top-level .noannex file will prevent git-annex init from being used in a repository. This is useful for repositories that have a policy reason not to use git-annex. The content of the file will be displayed to the user who tries to run git-annex init.


# git annex add foo git-annex: First run: git-annex init # git annex init init ok # git annex add foo add foo ok


Force the repository to be initialized using a different annex.version than the current default.
When the version given is one that automatically upgrades to a newer version, it will automatically use the newer version instead.
Only enable any special remotes that were configured with autoenable=true, do not otherwise initialize anything.
Also the git-annex-common-options(1) can be used.







Joey Hess <>