The app will not let me push to GitHub: the GitHub connection is look-only (and no app setting gates your git push)

Modified on Tue, 4 Aug at 7:09 PM

You keep your Booked Solid files in a git repo so they follow you between machines, and the app looks like it is only half in on the deal. "I can pull data from github to my machine no problem", but then "it refuses to allow me to push data up to github" when the session ends. "It commits locally but it won't push up." The app tells you it could do it if you would "change the permission from 'read only' to 'read-write'", so you open Settings > Permissions and find that "the drop down seems to be disabled". It sits on Read-only, "the settings in the app will not allow me to select anything", and "the token I generated does have read/write permissions", so that is not it either. Here is what is actually happening, and it is better news than it looks.

The short version

Booked Solid has no git feature of its own, and the GitHub connection inside it cannot commit or push. There is no app permission that could ever unlock a push. The greyed-out dropdown is correct and deliberate, and it is not the thing standing between you and your push. If pushing works from your terminal with the same token, nothing is broken. Keep pushing from the terminal and your machines will keep staying in sync.

What the "GitHub" connection actually is

Inside Booked Solid, GitHub is a read-only lookup tool with exactly two abilities:

  • Check which GitHub account the saved token belongs to.
  • List the repositories that token can see.

That is the whole surface. It cannot create a commit and it cannot push one. It exists so Otto can verify the saved token and read your repository list without ever being handed a general shell to do it with.

The awkward part deserves to be said out loud: a connection labelled plainly GitHub, sitting on the Connections tab next to your mail and your calendar, reads like file sync. It is not file sync. That naming has already cost a customer real troubleshooting time, and it is flagged on our end. We are not going to promise you a new label on a date we cannot keep, but you are not misreading the screen. The screen is misleading.

Why the permission dropdown is greyed out on Read-only

This is by design. It is not a bug, not a half-loaded screen, and not something a reinstall repairs.

On Settings > Permissions, every connected tool gets an access select with three levels: Read-only, Write-only and Read & write. That select is disabled for any tool that has no write ability to grant in the first place. Rest your pointer on the locked select and it says exactly that: This one only has read tools.

The GitHub connection ships two read tools and zero write tools, so it stays on Read-only permanently. There is no hidden setting, no admin mode and no config file that widens it. The dropdown looks dead because there is genuinely nothing on the other side of it.

Why none of this is what is stopping your push

This is the part that resolves it. The GitHub connection cannot push, and no other setting in Booked Solid grants or withholds a git push either. Whatever is committing locally and then failing to push up is running on your own machine, through your own git and your own credentials, and the app's permission screen has no say in it.

Which also means it is worth being blunt about the things that cannot help, because customers burn real time on all three:

  • Regenerating your GitHub token will not change anything. The app is not the thing being refused.
  • Widening the token's scopes will not change anything. A token with read/write permissions is not wasted, though. The app simply never uses the write half. If you ever want to tighten it instead, the only thing this connection actually needs is repository Metadata read access on the repos you want it to see.
  • Reinstalling the app will not change anything. The dropdown will be greyed out on the fresh install too, for the same correct reason.

If something in the app suggested that changing the permission would let it push, treat that as the app describing a general rule about connected tools rather than a real capability here. There is no push behind that setting to unlock.

The "Check usage" button and the fine-grained token screen

You may have noticed that Check usage on the GitHub card opens your GitHub personal access tokens page, and that the tab it lands on may not be the one your token lives on. That mismatch is cosmetic. It is a link to a settings page on github.com, nothing more. It does not read your token, does not test it, and has no bearing on whether a push succeeds. It is not the disconnect you are looking for.

What you were already doing is the right answer

Your Booking HQ is an ordinary folder of ordinary files on your computer. You can see exactly where it lives under Settings > General in the Your Booking HQ section, and the app only points at that folder. Nothing stops you from keeping your own git repo over it and pushing it from the terminal with your own fine-grained token, which is precisely what you have been doing on all three machines. Since the terminal push works, you are already set up correctly. Carry on.

The app's own way to move or protect data between machines

Booked Solid does have a built-in option here. It is a scheduled backup, not a git history, so there are no commits and no diffs to inspect. If you already have a working git repo over your Booking HQ, that is the cleaner fit for what you are doing. This is here so you know it exists.

  1. Open Settings > General and scroll to the Runs on its own scheduled-tasks section.
  2. Choose the Back up my data preset.
  3. Pick the time of day you want it to run.
  4. Click Choose a folder and pick where the archives should land.
  5. Click Add.

A folder inside Google Drive, Dropbox or OneDrive on your computer works well: your own sync client carries the archive up, and the app itself never talks to any cloud. Each run writes one compressed snapshot named BookedSolid-Backup-YYYY-MM-DD-HHMM.tar.gz, and the app keeps the newest 10 in that folder, removing older ones it created itself. Scheduled tasks run while the app is open, and if the machine was asleep at the set time the run catches up after it wakes.

One caveat that matters and is easy to be caught out by: a backup deliberately leaves out your saved API keys and sign-in secrets. They are encrypted with that computer's OS keychain and that encryption cannot be exported, and an archive quietly carrying decrypted secrets into a synced folder would be a leak rather than a feature. So after restoring on a new machine, you re-add your keys once. Everything else comes back.

If it still does not work

If your push is failing from the terminal as well, that is a git or GitHub problem on that machine and nothing in Booked Solid will change it: check your remote URL and whether the fine-grained token is authorised for that repository and still in date.

If something in the app is genuinely refusing an action and telling you it needs write access on a tool that should have it, that is worth a look. Reply here or email bookedsolid@kivimedia.freshdesk.com with the exact wording the app showed you and which connection it named, and a person will take it from there.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article