Skip to content
On this page

rclone gitannex

Speaks with git-annex over stdin/stdout.

Synopsis

Rclone's gitannex subcommand enables git-annex to store and retrieve content from an rclone remote. It is meant to be run by git-annex, not directly by users.

Installation on Linux

  1. Skip this step if your version of git-annex is 10.20240430 or newer. Otherwise, you must create a symlink somewhere on your PATH with a particular name. This symlink helps git-annex tell rclone it wants to run the "gitannex" subcommand.

    sh
    # Create the helper symlink in "$HOME/bin".
    ln -s "$(realpath rclone)" "$HOME/bin/git-annex-remote-rclone-builtin"
    
    # Verify the new symlink is on your PATH.
    which git-annex-remote-rclone-builtin
  2. Add a new remote to your git-annex repo. This new remote will connect git-annex with the rclone gitannex subcommand.

    Start by asking git-annex to describe the remote's available configuration parameters.

    sh
    # If you skipped step 1:
    git annex initremote MyRemote type=rclone --whatelse
    
    # If you created a symlink in step 1:
    git annex initremote MyRemote type=external externaltype=rclone-builtin --whatelse

    NOTE: If you're porting an existing git-annex-remote-rclone remote to use rclone gitannex, you can probably reuse the configuration parameters verbatim without renaming them. Check parameter synonyms with --whatelse as shown above.

    The following example creates a new git-annex remote named "MyRemote" that will use the rclone remote named "SomeRcloneRemote". That rclone remote must be one configured in your rclone.conf file, which can be located with rclone config file.

    sh
    git annex initremote MyRemote         \
        type=external                     \
        externaltype=rclone-builtin       \
        encryption=none                   \
        rcloneremotename=SomeRcloneRemote \
        rcloneprefix=git-annex-content    \
        rclonelayout=nodir
  3. Before you trust this command with your precious data, be sure to test the remote. This command is very new and has not been tested on many rclone backends. Caveat emptor!

    sh
    git annex testremote MyRemote

Happy annexing!

rclone gitannex [flags]

Options

  -h, --help   help for gitannex

See the global flags page for global options not listed here.

See Also

  • rclone - Show help for rclone commands, flags and backends.
rclone gitannex has loaded