diff options
Diffstat (limited to 'doc/git-annex.mdwn')
-rw-r--r-- | doc/git-annex.mdwn | 75 |
1 files changed, 59 insertions, 16 deletions
diff --git a/doc/git-annex.mdwn b/doc/git-annex.mdwn index 0912e0b2a..30494e95c 100644 --- a/doc/git-annex.mdwn +++ b/doc/git-annex.mdwn @@ -307,11 +307,19 @@ subdirectories). By default, the webapp can only be accessed from localhost, and running it opens a browser window. - With the `--listen=address[:port]` option, the webapp can be made to listen - for connections on the specified address. This disables running a - local web browser, and outputs the url you can use to open the webapp - from a remote computer. - Note that this does not yet use HTTPS for security, so use with caution! + To use the webapp on a remote computer, use the `--listen=address` + option to specify the address the web server should listen on + (or set annex.listen). + This disables running a local web browser, and outputs the url you + can use to open the webapp. + + When using the webapp on a remote computer, you'll almost certianly + want to enable HTTPS. The webapp will use HTTPS if it finds + a .git/annex/privkey.pem and .git/annex/certificate.pem. Here's + one way to generate those files, using a self-signed certificate: + + openssl genrsa -out .git/annex/privkey.pem 4096 + openssl req -new -x509 -key .git/annex/privkey.pem > .git/annex/certificate.pem # REPOSITORY SETUP COMMANDS @@ -709,13 +717,16 @@ subdirectories). To remove a value, use -s field-=value. + To set a value, only if the field does not already have a value, + use -s field?=value + To set a tag, use -t tag, and use -u tag to remove a tag. For example, to set some tags on a file and also its author: git annex metadata annexscreencast.ogv -t video -t screencast -s author+=Alice -* `view [field=value ...] [tag ...]` +* `view [tag ...] [field=value ...] [field=glob ...] [!tag ...] [field!=value ...]` Uses metadata to build a view branch of the files in the current branch, and checks out the view branch. Only files in the current branch whose @@ -726,10 +737,19 @@ subdirectories). a glob (`field="*"`) or by listing each wanted value. The resulting view will put files in subdirectories according to the value of their fields. - Once within a view, you can make additional directories, and + Once within such a view, you can make additional directories, and copy or move files into them. When you commit, the metadata will be updated to correspond to your changes. + There are fields corresponding to the path to the file. So a file + "foo/bar/baz/file" has fields "/=foo", "foo/=bar", and "foo/bar/=baz". + These location fields can be used the same as other metadata to construct + the view. + + For example, `/=podcasts` will only include files from the podcasts + directory in the view, while `podcasts/=*` will preserve the + subdirectories of the podcasts directory in the view. + * `vpop [N]` Switches from the currently active view back to the previous view. @@ -737,12 +757,12 @@ subdirectories). The optional number tells how many views to pop. -* `vfilter [field=value ...] [tag ...]` +* `vfilter [tag ...] [field=value ...] [!tag ...] [field!=value ...]` Filters the current view to only the files that have the - specified values and tags. + specified field values and tags. -* `vadd [field=glob ...]` +* `vadd [field=glob ...] [field=value ...] [tag ...]` Changes the current view, adding an additional level of directories to categorize the files. @@ -942,7 +962,7 @@ subdirectories). Rather than the normal output, generate JSON. This is intended to be parsed by programs that use git-annex. Each line of output is a JSON object. Note that JSON output is only usable with some git-annex commands, - like info, find, and whereis. + like info, find, whereis, and metadata. * `--debug` @@ -1133,10 +1153,11 @@ file contents are present at either of two repositories. The size can be specified with any commonly used units, for example, "0.5 gb" or "100 KiloBytes" -* `--metadata field=value` +* `--metadata field=glob` - Matches only files that have a metadata field attached with the specified - value. + Matches only files that have a metadata field attached with a value that + matches the glob. The values of metadata fields are matched case + insensitively. * `--want-get` @@ -1269,6 +1290,12 @@ Here are all the supported configuration settings. Note that setting numcopies to 0 is very unsafe. +* `annex.genmetadata` + + Set this to `true` to make git-annex automatically generate some metadata + when adding files to the repository. In particular, it stores + year and month metadata, from the file's modification date. + * `annex.queuesize` git-annex builds a queue of git commands, in order to combine similar @@ -1353,6 +1380,19 @@ Here are all the supported configuration settings. Set to false to prevent the git-annex assistant from automatically committing changes to files in the repository. +* `annex.startupscan` + + Set to false to prevent the git-annex assistant from scanning the + repository for new and changed files on startup. This will prevent it + from noticing changes that were made while it was not running, but can be + a useful performance tweak for a large repository. + +* `annex.listen` + + Configures which address the webapp listens on. The default is localhost. + Can be either an IP address, or a hostname that resolves to the desired + address. + * `annex.debug` Set to true to enable debug logging by default. @@ -1509,8 +1549,7 @@ Here are all the supported configuration settings. * `annex.web-options` - Options to use when using wget or curl to download a file from the web. - (wget is always used in preference to curl if available.) + Options to pass when running wget or curl. For example, to force ipv4 only, set it to "-4" * `annex.quvi-options` @@ -1649,6 +1688,10 @@ used by git-annex. `~/.config/git-annex/autostart` is a list of git repositories to start the git-annex assistant in. +`.git/hooks/pre-commit-annex` in your git repsitory will be run whenever +a commit is made, either by git commit, git-annex sync, or the git-annex +assistant. + # SEE ALSO Most of git-annex's documentation is available on its web site, |