b0VIM 7.3i{P/joeygnu~joey/src/git-annex/doc/git-annex.mdwnutf-8 U3210#"! Utp cZdsg1uovgc_adcwv2dc > Q  t 0    d 0 n f M ' `DBFFIxCB0/on=<*'a21 from the specified repository to the current one. When used with the --from option, copies the content of annexed files* copy [path ...] the current repository to the specified one. When used with the --to option, moves the content of annexed files from from the specified repository to the current one. When used with the --from option, moves the content of annexed files * move [path ...] To drop content from a remote, specify --from. safe to do so. This can be overridden with the --force switch. git-annex will refuse to drop content if it cannot verify it is Drops the content of annexed files from this repository. * drop [path ...] but you can override this using the --from option. Normally git-annex will choose which repository to copy the content from, or transferring them from some kind of key-value store. will involve copying them from another repository, or downloading them, Makes the content of annexed files available in this repository. This* get [path ...] listed. (Use --force to add ignored files.) Dotfiles are skipped unless explicitly git, or that git has been configured to ignore will be silently skipped. Adds files in the path to the annex. Files that are already checked into* add [path ...]subdirectories).default to acting on all relevant files in the current directory (andfiles in the directory. When no path is specified, most git-annex commandsis either a file or a directory. In the latter case it acts on all relevantLike many git commands, git-annex can be passed a path that # COMMONLY USED COMMANDS move iso/Debian_5.0.iso (moving to usbdrive...) ok # git annex move iso --to=usbdrive drop iso/Debian_4.0.iso ok # git annex drop iso/Debian_4.0.iso add iso/Debian_5.0.iso ok # git annex add iso get video/hackity_hack_and_kaxxt.mov (from usbdrive...) ok # git annex get video/hackity_hack_and_kaxxt.mov # git remote add usbdrive /media/usb # sudo mount /media/usb failed ca20064c-dbb5-11df-b2fe-002170d25c55 -- backup SATA drive 58d84e8a-d9ae-11df-a1aa-ab9aa8c00826 -- portable USB drive 5863d8c0-d9a9-11df-adb2-af51e6559a49 -- my home file server Try making some of these repositories available: I was unable to access these remotes: server get video/_why_hackity_hack_and_kaxxt.mov (not available) # git annex get video/hackity_hack_and_kaxxt.mov# EXAMPLEScontent from the key-value store.there aware of the annexed file, and it can be used to retrieve itsthem, and so on. Pushing to another git repository will make git-annexgit and versioned like regular files. You can move them around, delete a symlink is made that points to the content. These symlinks are checked intoWhen a file is annexed, its content is moved into a key-value store, andrevision control.etc that are associated with annexed files but that benefit from fullversioned files, which is convenient for maintaining documents, Makefiles,annexed files can co-exist in the same git repository with regularlybranches and distributed clones, are all very handy reasons to use git. Andmove files around and delete files with versioned directory trees, and useEven without file content tracking, being able to manage files with git,to limitations in memory, checksumming time, or disk space.dealing with files larger than git can currently easily handle, whether duecontents into git. While that may seem paradoxical, it is useful whengit-annex allows managing files with git, without checking the file# DESCRIPTIONgit annex command [params ...]# SYNOPSISgit-annex - manage files with git, without checking their contents in# NAMEadcmCB#"\ ~ 2 R  \ [ A @ A @   s r , R+*q54r1  qLK@?SRIH+*Warning: Automatically converted into a man page by mdwn2man. Edit with careJoey Hess # AUTHORshould be included, in, for example, `/usr/share/doc/git-annex/`If git-annex is installed from a package, a copy of its documentationMost of git-annex's documentation is available on its web site, # SEE ALSOto start the git-annex assistant in.`~/.config/git-annex/autostart` is a list of git repositoriesused by git-annex.`.git/annex/` in your git repository contains other run-time informationrepository symlink to that content.contents that are currently available. Annexed files in your git`.git/annex/objects/` in your git repository contains the annexed fileThese files are used by git-annex:# FILESNote that setting numcopies to 0 is very unsafe. *.wav annex.numcopies=2For example, this makes two copies be needed for wav files:the `annex.numcopies` attribute in `.gitattributes` files.The numcopies setting can also be configured on a per-file-type basis via *.ogg annex.backend=SHA256E * annex.backend=WORMbut the SHA256E backend for ogg files:use. For example, this here's how to use the WORM backend by default,the `annex.backend` attribute can be set to the name of the backend toconfigured on a per-file-type basis via `.gitattributes` files. In the file,The key-value backend used when adding a new file to the annex can be# CONFIGURATION VIA .gitattributes Normally this is set up by the git-annex assistant when pairing over XMPP. Used to identify the XMPP address of a Jabber buddy.* `remote..annex-xmppaddress` Normally this is automatically set up by `git annex initremote`. Used to identify webdav special remotes.* `remote..webdav` Normally this is automatically set up by `git annex initremote`. Used to identify Amazon Glacier special remotes.* `remote..glacier` Normally this is automatically set up by `git annex initremote`. Used to identify Amazon S3 special remotes.* `remote..s3` but you can change it if needed. remote. Normally this is automatically set up by `git annex initremote`, the location of the directory where annexed files are stored for this Used by directory special remotes, this configures* `remote..directory` set up by `git annex initremote`, but you can change it if needed. the location of the bup repository to use. Normally this is automatically Used by bup special remotes, this configures* `remote..buprepo` set up by `git annex initremote`, but you can change it if needed. the location of the rsync repository to use. Normally this is automatically Used by rsync special remotes, this configures* `remote..rsyncurl` header. This overrides annex.http-headers. If set, the command is run and each line of its output is used as a HTTP* `annex.http-headers-command` this option can be set, one per header. HTTP headers to send when downloading from the web. Multiple lines of* `annex.http-headers` For example, to force ipv4 only, set it to "-4"ad Show debug messages.* --debugadZBuLKrq]\ U I H = <   q J I  x w -    | H G 3 2   r q ' dcONgf[ZX('poedZYa76-,nmcbB like object. Note that json output is only usable with some git-anncommands, parsed by programs that use git-annex. Each line of output is a JSON Rather than the normal output, generate JSON. This is intended to be* --json Enable verbose display.* --verbose and progress displays. Avoid the default verbose display of what is done; only show errors* --quiet and preferred content configuration. will only do so when needed to help satisfy the setting of annex.numcopies, Enables automatic mode. Commands that get, drop, or move file contents* --auto What is avoided depends on the command. Enables less expensive, but also less thorough versions of some commands.* --fast Use with care. source of it can be verified to still exist, or adding ignored files. Force unsafe actions, such as dropping a file's content when no other* --force# OPTIONS This command is used internally to perform git pulls over XMPP.* xmppgit be rekeyed. Use with caution. With --force, even files whose content is not currently available will both the file, and the new key to use for it. This plumbing-level command is similar to migrate, but you specify * rekey [file key ...] This plumbing-level command is used by the assistant to transfer data.* transferkey key git annex dropkey SHA1-s10-7da006579dd64330eb2456001fd01948430572f2 Example: to have a file in the git repository pointing at them. This can be used to drop content for arbitrary keys, which do not need keys from this repository. This plumbing-level command drops the annexed data for the specified* dropkey [key ...] in the git repository to link to a specified key. This plumbing-level command can be used to manually set up a file* fromkey key file automatically creates a pre-commit hook using this. This is meant to be called from git's pre-commit hook. `git annex init` files into the annex. point to annexed content. Also handles injecting changes to unlocked Fixes up symlinks that are staged as part of a commit, to ensure they* pre-commit [path ...]# PLUMBING COMMANDS git repository plus the previously annexed files. repository, and remove all of git-annex's other data, leaving you with a Use this to stop using git annex. It will unannex every file in the* uninit a hard link to it. In --fast mode, this command leaves content in the annex, simply making `git annex drop` instead, and you can also `git rm` the file. file and don't want its contents any more. In that case you should use This is not the command you should use if you intentionally annexed a even if you've already committed it. `git annex unannex` to move content out of the annex at any point, Use this to undo an accidental `git annex add` command. You can use* unannex [path ...] git annex reinject /tmp/foo.iso foo.iso Example: provided. Automatically runs fsck on dest to check that the expected content was elsewhere and want to put it in the local annex. This can be useful if you have obtained the content of a file from Moves the src file into the annex as the content of the dest file.* reinject src dest this can also be used to migrate files to use the new key format. However, if a backend changes the information it uses to construct a key, Normally, nothing will be done to files already using the new backend. migration. Use `git annex unused` to find and remove the old key. Note that the content is also still available using the old key after is currently available are migrated.ad like status and object. Note that json output is only usable with some git-annex commands,