Privacy Policy
Effective date: August 13, 2026
Overview
GitSync.md ("the App") is an iOS application developed by Cody Bontecou that provides Git version control on iPhone and iPad. Your privacy matters. This policy explains what data the App accesses, how it's used, and what is never collected.
Core App and Optional GitSync Assist
The core Git client sends repository contents and Git credentials directly from your device to the Git provider you select. We do not receive or store repository contents, local file paths, Git credentials, advertising identifiers, location, contacts, or photos.
If you explicitly subscribe to and configure GitSync Assist, the App uses a limited relay service to receive GitHub App push events and send best-effort silent Apple Push Notification service (APNs) wake hints. The relay stores only the metadata needed to provide and operate that feature:
- An opaque, app-generated installation identifier and short-lived hashed authorization sessions
- Verified subscription product, original transaction identifier, status, and expiration/revocation timestamps
- GitHub App installation and repository numeric identifiers; selected branch; and an opaque enrollment channel
- APNs device token and sandbox/production environment
- Webhook delivery IDs, opaque outbox/attempt IDs, status codes/reasons, and operational timestamps
Assist metadata is used only for entitlement enforcement, routing, abuse/security controls, troubleshooting, deletion, and reliable retry. It is not used for advertising or cross-app tracking. Silent push payloads contain only Apple's content-available flag plus opaque channel and event-hint identifiers—never repository names, paths, content, commits, or credentials.
Data Stored on Your Device
The following data is stored locally on your device. Git credentials and repository content are never transmitted to the Assist relay:
- Git author name and email — Used solely for Git commit metadata. You provide these when configuring the App.
- Authentication tokens — GitHub OAuth tokens or Personal Access Tokens are stored in the iOS Keychain, which is encrypted at rest by the operating system.
- Repository data — Cloned repositories, commit history, and working files are stored in the App's sandboxed container and iOS File Provider directory.
First-Party Onboarding Analytics
The App sends limited onboarding events to our Cloudflare Worker and D1 database so we can understand whether setup succeeds. We retain an app-generated installation identifier, opaque event identifier, event name, app version/build/platform, coarse onboarding step, coarse authentication method/outcome, whether you selected the default or a custom save location, a coarse error category, and event time. This analytics service rejects repository names or URLs, file or folder paths, branch names, author names or email addresses, GitHub usernames, credentials, file contents, free-form text, raw device identifiers, user agents, and raw request IP storage. These events are used for product analytics and troubleshooting, not advertising or cross-app tracking. Event rows are scheduled for deletion after 90 days. The App's GitSync Assist settings can open a private data-request email draft containing the opaque installation identifiers support needs; review it before sending and never post those identifiers publicly.
Website Analytics
The GitSync.md website, including this policy, conditionally loads Cloudflare Web Analytics after a first-party analytics gate allows it. Cloudflare Web Analytics provides aggregate page-view, performance, country, host/path, referrer, device-type, browser, operating-system, and navigation-type measurements. Cloudflare states that this service does not track individual users across its customers' sites and does not use the website analytics for advertising. This website measurement is separate from the iOS App's onboarding analytics and GitSync Assist relay.
Third-Party Services
GitSync.md communicates directly with GitHub's servers using the Git protocol and GitHub's API. When you authenticate and perform Git operations (clone, pull, push), data is exchanged between your device and GitHub according to GitHub's Privacy Statement.
Optional GitSync Assist also uses Apple's StoreKit and APNs, GitHub Apps/webhooks, and Cloudflare Workers, D1, and Queues. The website analytics described above uses Cloudflare Web Analytics. Those providers process data under their respective terms and privacy policies. App Store purchase and subscription administration is handled by Apple.
Retention, Deletion, and Control
GitSync Assist is opt-in per repository and can be disabled without affecting manual Git features. Device registrations and repository enrollments are deleted or tombstoned when you remove them, when entitlement is revoked, or when APNs permanently rejects a token. Short-lived authorization and link-state records expire automatically. Webhook/outbox records are scheduled for deletion after 30 days and App Store notification deduplication records after 90 days; operational records may be retained only as necessary for security, legal compliance, or resolving an active incident.
You can remove an Assist enrollment in repository settings, delete this device's Assist relay data in the App, and manage or cancel the subscription through Apple. For an onboarding-analytics access/deletion request or support with a relay deletion, use Request data access or deletion in the App's GitSync Assist settings. It opens a private email draft to cody@isolated.tech with the required opaque installation identifiers; review the draft before sending and do not put those identifiers in a public GitHub issue. Deletion cannot remove records a third party must retain under its own legal obligations.
iOS File Provider
GitSync.md registers as an iOS File Provider, making your cloned repositories visible in the Files app. This allows other apps on your device to access your repository files. File access is governed by iOS's built-in permission model — the App does not control or monitor how other apps use these files.
x-callback-url
GitSync.md supports the syncmd:// URL scheme for automation. Other apps (such as Obsidian) can invoke Git operations via this URL scheme. No data is shared externally through this mechanism — operations execute locally on your device.
Data Security
All sensitive credentials are stored in the iOS Keychain, which provides hardware-backed encryption. Repository data is stored within the App's sandboxed file system, protected by iOS's built-in data protection. All network communication with GitHub uses HTTPS/TLS encryption.
Children's Privacy
The App and optional subscription are not directed to children under 13. We do not knowingly use GitSync Assist to collect personal information from children.
Changes to This Policy
If this Privacy Policy is updated, the revised version will be posted on this page with an updated effective date. Continued use of the App after changes constitutes acceptance of the updated policy.
Contact
For privacy or data requests, use the private in-App email flow described above or email cody@isolated.tech. GitHub Issues are available for non-private product questions only; never post installation identifiers, credentials, tokens, repository details, or other private data there.