Termux is an Android app that can run some Linux software in a terminal.

git-annex is not currently part of the Termux distribution, but it's easy to install it. Paste these commands into Termux:

pkg install git wget tar coreutils proot
termux-setup-storage
cd
wget https://downloads.kitenet.net/git-annex/linux/current/git-annex-standalone-armel.tar.gz
tar zxf git-annex-standalone-armel.tar.gz
rm git-annex-standalone-armel.tar.gz
git-annex.linux/runshell

Now you can set up a git-annex repository or two, to manage your Android files. To avoid typing any more, you can start up the git-annex webapp and set things up in there:

git annex webapp

Or you can continue using git-annex at the command line. Here we'll make a repository for photos:

cd ~/storage/dcim
git init
git annex init

You can go on to set up a ssh remote pointing to a server, and sync your files to and from it.

And so on. Most ways you would use git-annex on a Linux system work fairly well in this Termux environment.

Starting on boot

If you install the Termux:Boot app, git-annex will also integrate with it. Repositories you create with the webapp (or list in ~/.config/git-annex/autostart) will have the assistant started in them on boot, so you don't need to start it manually.

Known limitations

  • Direct mode

    git-annex will probably default to direct mode due to the limitations of Android's /sdcard. You can get around this using v6 unlocked repositories, or by putting the git-annex repository on a better filesystem on the Android device, such as your termux home directory.