git-annex/doc/special_remotes/adb.mdwn
Joey Hess 50c2cac7e7
adb: Added configuration setting oldandroid=true
To avoid using find -printf, which was first supported in Android around
2019-2020.

Probing seems too fragile, and execing stat once per file is too slow to do
when there's a faster way available, which brought me to an option...

Sponsored-by: Brett Eisenberg on Patreon
2022-07-13 18:00:47 -04:00

49 lines
2 KiB
Markdown

This special remote stores files on an Android device.
The `adb` program is used to access the Android device, which
allows connecting to it in various ways like a USB cable or wifi.
## example
To add a remote for the /sdcard/DCIM directory
on the Android device, allowing to import and export photos:
git annex initremote android type=adb androiddirectory=/sdcard/DCIM encryption=none exporttree=yes importtree=yes
git annex export master --to android
## configuration
A number of parameters can be passed to `git annex initremote` to configure
the adb remote.
* `androiddirectory` - Set to the location on the Android device where
files for the special remote are stored.
* `androidserial` - Normally this is not needed, but if multiple Android
devices are accessible, you'll be prompted to use it to specify which
one to use.
* `exporttree` - Set to "yes" to make this special remote usable
by [[git-annex-export]]. It will not be usable as a general-purpose
special remote. Since this makes the exported files easily browsable
on the Android device, you will almost always want to enable this.
* `importtree` - Set to "yes" to make this special remote usable
by [[git-annex-import]]. When set in combination with exporttree,
this lets files be imported from it, and changes exported back to it.
* `oldandroid` - Set to "yes" if your Android device is too old
to support `find -printf`. Enabling this will make importing slower.
If you see an error like "bad arg '-printf'", you can enable this
option, by running eg: `git-annex enableremote android oldandroid=yes`
* `ignorefinderror` - Set to "yes" to ignore errors when running "adb find"
on the Android device. This can be useful eg, if some subdirectories are
not readable, to let it import the other things that are readable.
* `encryption` - One of "none", "hybrid", "shared", or "pubkey".
See [[encryption]].
* `keyid` - Specifies the gpg key to use for [[encryption]].
* `chunk` - Enables [[chunking]] when storing large files.