Common questions about GitSync. If yours isn’t here, try Troubleshooting or ask in Discussions.
Permissions
Why does GitSync need “All files access” on Android?
Because your repository lives in a folder you chose, not inside the app’s private storage, and Git needs ordinary read and write access to that whole folder to work. Android’s scoped storage blocks it otherwise, and setup can’t complete without it.
The permission is only used inside the repositories you select. GitSync does not scan, index or upload anything else.
Full explanation, grant steps for each Android version, and fixes for the toggle being greyed out or the permission resetting: All Files Access (Android).
Do I have to enable the accessibility service?
Only if you want App Sync on Android, where GitSync watches for another app being opened or closed. It reads nothing else and stores no data.
If you’d rather not enable it, you have options:
- Trigger the sync from Tasker or another automation app
- Use Scheduled Sync
- Use a Quick Settings tile, shortcut or widget
Is GitSync collecting my files or notes?
No. Your repository contents go to the remote you configured and nowhere else. The app is open source if you want to check.
Free and Premium
What’s free, and what needs Premium?
The Git client is free. Premium is a one-time purchase that adds a few things on top.
Free, with no limits:
- Clone, fetch, pull, stage, commit and push
- Every authentication method: GitHub, GitLab, Gitea, Codeberg, SSH and HTTP/S
- All background sync triggers: app open/close, schedules, tiles, shortcuts, widgets and intents
- Merge conflict resolution
- The file explorer and in-app editor
- Branch creation and switching
- Commit signing with OpenSSH keys
- Issues, pull requests, tags, releases and Actions
- Encrypted backup and restore of your settings
Premium (one-time purchase):
- Multiple repositories via repository containers
- Git filters, including Git LFS and git-crypt
Nothing in the free app is time limited, ad supported or reduced in function. If you only need one repository synced, you never need to pay anything.
Git features
Is Git LFS supported?
Yes, with Premium. LFS files are pulled and pushed as part of a normal sync, and you can add files to LFS from the file explorer.
Git LFS requires HTTPS authentication. SSH repositories cannot push or pull LFS objects.
Without Premium, LFS tracked files are added to .git/info/exclude so they don’t break your sync, and are listed in the app under Unsynced Files instead.
Is git-crypt supported?
Yes, with Premium, as part of Git filters. You can generate, import and export keys, and lock or unlock encrypted files. Rules are managed through .gitattributes, either with the visual editor or by editing the file directly.
This is also the answer to “how do I keep my notes encrypted from my Git host”, since a private repository is readable by whoever runs the server.
Can I sync more than one repository?
Yes, with Premium. Each repository lives in its own container with its own authentication, folder and sync settings, and you switch between them from a dropdown.
The free app syncs one repository.
Are Git hooks supported?
Not yet.
Setup
Does GitSync work with self-hosted Forgejo, Gitea or GitLab?
Yes, using a personal access token over HTTP/S or an SSH key. OAuth login only works with the hosted providers the app ships a registration for. See OAuth for Self-Hosted Instances for the reasoning and setup steps.
Can I use GitSync and the Obsidian Git plugin together?
Not on the same device. Run the plugin on desktop, GitSync on mobile, and turn on Disable on this device in the plugin’s mobile settings. See Concurrent Repository Access.
Do I need Google Play Services?
No. The open source APK and the F-Droid build work without it, on privacy focused ROMs included.
See also: Troubleshooting, Sync Options, Premium Features, Authentication Methods