Tracking issue for removal of Git support w/ external repositories #1118
Comments
The silence here suggests that either nobody reads my release notes or this change is going to affect no-one, so I'm going to prepare a patch for this tonight. |
On second thoughts, going to push this to a longer v2.0.0 timeline. |
I'm up for git, git is essential, but it's hard to make it work |
Do you have any reason in particular to use Git but not let the app place the repository in its private directory? |
This just applies to people who use external git repos on the SD card, right? Git support for repos cloned from within the app remains unaffected? Because the ability to sync my passwords using git is one of the key features for me. |
Yes, this applies only to the external repos. |
I completely missed that part. Well, it's nice to be able to access things via Termux and other solutions, but then you can always just push inside Termux and pull inside the app... I'm thinking this is an easily-adjusted-to change. |
This would break how I currently use My use-case may be somewhat out of the ordinary: I store some non-encrypted files in my pass repo and edit them in other apps. For whatever reason, your implementation of git syncing on Android is by far the most convenient to use, so I've been piggy-backing on it rather than using something like mgit. Of course I understand if you need to pull this functionality for ongoing maintainability, and I'll just figure out another way to move my files around. |
Thanks for your understanding, it is unfortunate but we really cannot support this specific use-case. |
As long as the git functionality stays in the internal app storage, I'm totally fine with it. |
Off topic: You should really consider using https://github.com/Catfriend1/syncthing-android for your needs. If version control/file history is a concern, you can store old versions of synced files with Syncthing up to a user-defined limit; keep the whole history on your main device if storage there is sufficient, and keep a few past versions on the phone—that's what I do. It isn't as storage-efficient as Git is with text files since Git uses deltas, but it's about the same for binary files. |
This is a discussion thread for users to comment on our proposal to remove support for Git features in external repositories. For the v1.12.0 release, we're doing a soft launch of our plans by taking away the ability to clone a repository to external storage. This is done as a means to gather feedback about the change and evaluate if this can be done without breaking too many users.
Our reasons for making this change are multifold:
Android is increasingly restrictive with what apps will be able to get full filesystem access, and while we welcome these crucial privacy improvements, it is very hard for us to be compatible with these changes as the library we use for Git is a Java-focused product and doesn't allude to most Android-specific nuances.
As far as we know, the only reason for putting your repository in a public directory on your device is using a third-party sync system like Syncthing, Nextcloud, a WebDAV server or something along those lines. This, in our opinion, makes Git pointless because it's sync guarantees are violated by arbitrary external entities.
Dropping support for this allows us to rewrite the entire core of our repository handling system, making it more robust, maintainable and clean.
What this change would mean for users:
If your repository does not use Git, nothing changes for you.
If you have a Git-based password repository in your device's storage, you will be able to use it as if it is not a Git repo. The
.git
directory will be ignored by the app and it will not attempt to make commits for any changes to the store. No sync operations will be available from the app, and no Git settings options will be visible.The text was updated successfully, but these errors were encountered: