SymvibeDocs
  1. Docs
  2. The board
  3. Git

Git on the board

Symvibe has a Git panel for the everyday loop (review changes, commit, push, pull) and a branches card for switching branches. Both run the git on your Mac, in your repo.

Updated October 22, 20263 min read

On this page

Open the panel#

Click the GitHub pill in the bottom left corner, press G, or choose ToolsGitHub. Esc closes it. The header shows the repo, the branch, whether it is in sync or how many commits it is ahead and behind, a history of the last 100 commits, Open on GitHub and Refresh.

Ahead and behind are as of your last fetch

The panel never fetches on its own. Pull and Push are what talk to the remote.

Committing and pushing from the board.

Review and commit#

  • The changes list has a checkbox per file, with All and None, and shows up to 400 files. Hover a file to see its line counts.
  • The message field suggests a subject, written on your Mac from the changes. The sparkle button uses it.
  • Commit & Push commits the checked files and pushes. It reads Commit when the HEAD is detached. Commit only, shown when you are on a branch with a remote, commits without pushing.
  • Until the repo has a remote, the panel shows Publish to GitHub instead of the changes list.
  • Committing is refused while a merge has unresolved conflicts.
  • Discarding a file's changes always asks. Tracked files go back to the last commit and a copy of your version goes to the Trash; untracked files move to the Trash.

Pull, push and publish#

  • Pull appears when your branch is behind as of the last fetch, and runs a fast-forward pull. Saying pull in the command bar pulls even when the panel shows no Pull button. If the branches diverged, the panel says so: merge in a console.
  • Push sends your commits; Publish branch pushes a branch that has no upstream yet.
  • A folder that is not a repository offers Create repository, which runs git init on branch main right away.

Publish to GitHub#

With no remote yet, publishing uses the GitHub CLI, gh:

  1. Install gh

    If it is missing, the panel offers to copy brew install gh.

  2. Connect your account

    Connect account opens a console running gh auth login. The panel notices when you finish. The same connection is in SettingsConnections.

  3. Create the repository

    Pick a name (the folder's by default) and Private or Public (Private by default), then Create repo & push everything. It commits everything pending, creates the GitHub repository and pushes.

Files over 100 MB#

GitHub rejects files over 100 MB. Before you commit, Keep off GitHub stops tracking them and adds them to .gitignore. If a push was already rejected, Remove from commits & push rewrites the commits that were not pushed yet; it asks for a second click, and keeps the old history on a backup branch named hv-oversize-backup.

Git from the command bar#

commit and push, push, pull and commit with the message fix login work in the command bar and by voice. They press the panel's buttons for you.

An explicit Git order runs at once

When you say push or commit, Symvibe does it without asking again, and a push first commits every checked change. Look at the changes list before you say it.

The branches card#

  • Insert it from the right-click ring under More. It shows the current branch, ahead and behind, how many files are edited and up to 200 local branches.
  • Click a branch to switch to it. There is no confirmation; git itself refuses a switch that would overwrite uncommitted work.
  • New branch creates a branch and switches to it. The trash icon deletes a branch with git branch -d, which refuses branches with unmerged work.
  • Panel opens the Git panel.

What it leaves to you#

  • There is no merge, rebase or stash in the panel. Use a console for those.
  • Git never asks for a password inside the app, and SSH runs in batch mode: a key with a passphrase must already be in your ssh agent or Keychain, and the server must already be in your known hosts.
  • Every git command has a time limit. A push can run long, but stops after five minutes without output.

Keep going#

Something on this page does not match what you see in the app? Write to hello@symvibe.com or tell us in the Discord, and we will fix it.